Changeset 29198 in osm for applications/editors/josm/plugins/smed2/src
- Timestamp:
- 2013-01-14T19:11:27+01:00 (12 years ago)
- Location:
- applications/editors/josm/plugins/smed2/src
- Files:
-
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/smed2/src/panels/PanelMain.java
r29074 r29198 16 16 public class PanelMain extends JPanel { 17 17 18 private static final long serialVersionUID = 1L;19 20 18 private JTabbedPane tabs = null; 21 19 // public PanelF panelF = null; -
applications/editors/josm/plugins/smed2/src/panels/ShowFrame.java
r29184 r29198 18 18 19 19 public class ShowFrame extends JFrame implements MapHelper { 20 private static final long serialVersionUID = 1L;21 20 22 21 public SeaMap showMap; -
applications/editors/josm/plugins/smed2/src/seamap/Renderer.java
r29189 r29198 18 18 import s57.S57att.Att; 19 19 import s57.S57obj.Obj; 20 import s57.S57val.ColCOL;21 20 import s57.S57val.*; 22 21 import s57.S57val; … … 66 65 ArrayList<Long> way = map.ways.get(feature.refs); 67 66 Coord coord = map.nodes.get(way.get(0)); 68 double llon = Math.toRadians(coord.lon);69 double llat = Math.toRadians(coord.lat);67 double llon = coord.lon; 68 double llat = coord.lat; 70 69 double sigma = 0.0; 71 70 for (long node : way) { 72 71 coord = map.nodes.get(node); 73 double lat = Math.toRadians(coord.lat);74 double lon = Math.toRadians(coord.lon);72 double lat = coord.lat; 73 double lon = coord.lon; 75 74 sigma += (lon * Math.sin(llat)) - (llon * Math.sin(lat)); 76 75 llon = lon; 77 76 llat = lat; 78 77 } 79 return Math.abs(sigma) / 2.0* 3444 * 3444;78 return Math.abs(sigma) * 3444 * 3444 / 2.0; 80 79 } 81 80 return 0.0; … … 83 82 84 83 public static Coord findCentroid(Feature feature) { 85 double tst = calcArea(feature);86 84 Coord coord; 87 85 ArrayList<Long> way = map.ways.get(feature.refs); … … 105 103 double lon = coord.lon; 106 104 double lat = coord.lat; 107 double arc = (Math.acos(Math.cos( Math.toRadians(lon-llon)) * Math.cos(Math.toRadians(lat-llat))));105 double arc = (Math.acos(Math.cos(lon-llon) * Math.cos(lat-llat))); 108 106 slat += (lat * arc); 109 107 slon += (lon * arc); … … 122 120 } 123 121 122 public static void lineSymbols(Feature feature, Symbol prisymb, double space, Symbol secsymb, int ratio) { 123 if (feature.flag != Fflag.NODE) { 124 ArrayList<Long> way = map.ways.get(feature.refs); 125 for (long node : way) { 126 Point2D point = helper.getPoint(map.nodes.get(node)); 127 128 } 129 } 130 } 131 132 public static void lineVector (Feature feature, LineStyle style) { 133 134 } 135 136 public static void labelText (Feature feature, String str, TextStyle style, Delta delta) { 137 138 } 139 140 public static void lineText (Feature feature, String str, TextStyle style, double offset, Delta delta) { 141 142 } 124 143 } -
applications/editors/josm/plugins/smed2/src/seamap/Rules.java
r29186 r29198 10 10 package seamap; 11 11 12 import java.awt.BasicStroke; 13 import java.awt.Color; 14 import java.awt.Font; 15 import java.awt.geom.AffineTransform; 12 16 import java.util.ArrayList; 13 17 … … 16 20 import s57.S57obj.*; 17 21 18 import seamap.SeaMap.AttItem;19 22 import seamap.SeaMap.*; 20 23 import symbols.*; … … 29 32 map = m; 30 33 zoom = z; 31 ArrayList<Feature> feature;32 if (( feature= map.features.get(Obj.SLCONS)) != null) shoreline(feature);33 if (( feature= map.features.get(Obj.SLCONS)) != null) shoreline(feature);34 if (( feature= map.features.get(Obj.PIPSOL)) != null) pipelines(feature);35 if (( feature= map.features.get(Obj.CBLSUB)) != null) cables(feature);36 if (( feature= map.features.get(Obj.PIPOHD)) != null) pipelines(feature);37 if (( feature= map.features.get(Obj.CBLOHD)) != null) cables(feature);38 if (( feature= map.features.get(Obj.TSEZNE)) != null) separation(feature);39 if (( feature= map.features.get(Obj.TSSCRS)) != null) separation(feature);40 if (( feature= map.features.get(Obj.TSSRON)) != null) separation(feature);41 if (( feature= map.features.get(Obj.TSELNE)) != null) separation(feature);42 if (( feature= map.features.get(Obj.TSSLPT)) != null) separation(feature);43 if (( feature= map.features.get(Obj.TSSBND)) != null) separation(feature);44 if (( feature= map.features.get(Obj.SNDWAV)) != null) areas(feature);45 if (( feature= map.features.get(Obj.OSPARE)) != null) areas(feature);46 if (( feature= map.features.get(Obj.FAIRWY)) != null) areas(feature);47 if (( feature= map.features.get(Obj.DRGARE)) != null) areas(feature);48 if (( feature= map.features.get(Obj.RESARE)) != null) areas(feature);49 if (( feature= map.features.get(Obj.SPLARE)) != null) areas(feature);50 if (( feature= map.features.get(Obj.SEAARE)) != null) areas(feature);51 if (( feature= map.features.get(Obj.OBSTRN)) != null) obstructions(feature);52 if (( feature= map.features.get(Obj.UWTROC)) != null) obstructions(feature);53 if (( feature= map.features.get(Obj.MARCUL)) != null) areas(feature);54 if (( feature= map.features.get(Obj.WTWAXS)) != null) waterways(feature);55 if (( feature= map.features.get(Obj.RECTRC)) != null) transits(feature);56 if (( feature= map.features.get(Obj.NAVLNE)) != null) transits(feature);57 if (( feature= map.features.get(Obj.HRBFAC)) != null) harbours(feature);58 if (( feature= map.features.get(Obj.ACHARE)) != null) harbours(feature);59 if (( feature= map.features.get(Obj.ACHBRT)) != null) harbours(feature);60 if (( feature= map.features.get(Obj.LOKBSN)) != null) locks(feature);61 if (( feature= map.features.get(Obj.LKBSPT)) != null) locks(feature);62 if (( feature= map.features.get(Obj.GATCON)) != null) locks(feature);63 if (( feature= map.features.get(Obj.DISMAR)) != null) distances(feature);64 if (( feature= map.features.get(Obj.HULKES)) != null) ports(feature);65 if (( feature= map.features.get(Obj.CRANES)) != null) ports(feature);66 if (( feature= map.features.get(Obj.LNDMRK)) != null) landmarks(feature);67 if (( feature= map.features.get(Obj.MORFAC)) != null) moorings(feature);68 if (( feature= map.features.get(Obj.NOTMRK)) != null) notices(feature);69 if (( feature= map.features.get(Obj.SMCFAC)) != null) marinas(feature);70 if (( feature= map.features.get(Obj.BRIDGE)) != null) bridges(feature);71 if (( feature= map.features.get(Obj.LITMAJ)) != null) lights(feature);72 if (( feature= map.features.get(Obj.LITMIN)) != null) lights(feature);73 if (( feature= map.features.get(Obj.LIGHTS)) != null) lights(feature);74 if (( feature= map.features.get(Obj.SISTAT)) != null) signals(feature);75 if (( feature= map.features.get(Obj.SISTAW)) != null) signals(feature);76 if (( feature= map.features.get(Obj.CGUSTA)) != null) signals(feature);77 if (( feature= map.features.get(Obj.RDOSTA)) != null) signals(feature);78 if (( feature= map.features.get(Obj.RADSTA)) != null) signals(feature);79 if (( feature= map.features.get(Obj.RSCSTA)) != null) signals(feature);80 if (( feature= map.features.get(Obj.PILBOP)) != null) signals(feature);81 if (( feature= map.features.get(Obj.WTWGAG)) != null) gauges(feature);82 if (( feature= map.features.get(Obj.OFSPLF)) != null) platforms(feature);83 if (( feature= map.features.get(Obj.WRECKS)) != null) wrecks(feature);84 if (( feature= map.features.get(Obj.LITVES)) != null) floats(feature);85 if (( feature= map.features.get(Obj.LITFLT)) != null) floats(feature);86 if (( feature= map.features.get(Obj.BOYINB)) != null) floats(feature);87 if (( feature= map.features.get(Obj.BOYLAT)) != null) buoys(feature);88 if (( feature= map.features.get(Obj.BOYCAR)) != null) buoys(feature);89 if (( feature= map.features.get(Obj.BOYISD)) != null) buoys(feature);90 if (( feature= map.features.get(Obj.BOYSAW)) != null) buoys(feature);91 if (( feature= map.features.get(Obj.BOYSPP)) != null) buoys(feature);92 if (( feature= map.features.get(Obj.BOYWTW)) != null) buoys(feature);93 if (( feature= map.features.get(Obj.BCNLAT)) != null) beacons(feature);94 if (( feature= map.features.get(Obj.BCNCAR)) != null) beacons(feature);95 if (( feature= map.features.get(Obj.BCNISD)) != null) beacons(feature);96 if (( feature= map.features.get(Obj.BCNSAW)) != null) beacons(feature);97 if (( feature= map.features.get(Obj.BCNSPP)) != null) beacons(feature);98 if (( feature= map.features.get(Obj.BCNWTW)) != null) beacons(feature);34 ArrayList<Feature> objects; 35 if ((objects = map.features.get(Obj.SLCONS)) != null) for (Feature feature : objects) shoreline(feature); 36 if ((objects = map.features.get(Obj.SLCONS)) != null) for (Feature feature : objects) shoreline(feature);; 37 if ((objects = map.features.get(Obj.PIPSOL)) != null) for (Feature feature : objects) pipelines(feature); 38 if ((objects = map.features.get(Obj.CBLSUB)) != null) for (Feature feature : objects) cables(feature); 39 if ((objects = map.features.get(Obj.PIPOHD)) != null) for (Feature feature : objects) pipelines(feature); 40 if ((objects = map.features.get(Obj.CBLOHD)) != null) for (Feature feature : objects) cables(feature); 41 if ((objects = map.features.get(Obj.TSEZNE)) != null) for (Feature feature : objects) separation(feature); 42 if ((objects = map.features.get(Obj.TSSCRS)) != null) for (Feature feature : objects) separation(feature); 43 if ((objects = map.features.get(Obj.TSSRON)) != null) for (Feature feature : objects) separation(feature); 44 if ((objects = map.features.get(Obj.TSELNE)) != null) for (Feature feature : objects) separation(feature); 45 if ((objects = map.features.get(Obj.TSSLPT)) != null) for (Feature feature : objects) separation(feature); 46 if ((objects = map.features.get(Obj.TSSBND)) != null) for (Feature feature : objects) separation(feature); 47 if ((objects = map.features.get(Obj.SNDWAV)) != null) for (Feature feature : objects) areas(feature); 48 if ((objects = map.features.get(Obj.OSPARE)) != null) for (Feature feature : objects) areas(feature); 49 if ((objects = map.features.get(Obj.FAIRWY)) != null) for (Feature feature : objects) areas(feature); 50 if ((objects = map.features.get(Obj.DRGARE)) != null) for (Feature feature : objects) areas(feature); 51 if ((objects = map.features.get(Obj.RESARE)) != null) for (Feature feature : objects) areas(feature); 52 if ((objects = map.features.get(Obj.SPLARE)) != null) for (Feature feature : objects) areas(feature); 53 if ((objects = map.features.get(Obj.SEAARE)) != null) for (Feature feature : objects) areas(feature); 54 if ((objects = map.features.get(Obj.OBSTRN)) != null) for (Feature feature : objects) obstructions(feature); 55 if ((objects = map.features.get(Obj.UWTROC)) != null) for (Feature feature : objects) obstructions(feature); 56 if ((objects = map.features.get(Obj.MARCUL)) != null) for (Feature feature : objects) areas(feature); 57 if ((objects = map.features.get(Obj.WTWAXS)) != null) for (Feature feature : objects) waterways(feature); 58 if ((objects = map.features.get(Obj.RECTRC)) != null) for (Feature feature : objects) transits(feature); 59 if ((objects = map.features.get(Obj.NAVLNE)) != null) for (Feature feature : objects) transits(feature); 60 if ((objects = map.features.get(Obj.HRBFAC)) != null) for (Feature feature : objects) harbours(feature); 61 if ((objects = map.features.get(Obj.ACHARE)) != null) for (Feature feature : objects) harbours(feature); 62 if ((objects = map.features.get(Obj.ACHBRT)) != null) for (Feature feature : objects) harbours(feature); 63 if ((objects = map.features.get(Obj.LOKBSN)) != null) for (Feature feature : objects) locks(feature); 64 if ((objects = map.features.get(Obj.LKBSPT)) != null) for (Feature feature : objects) locks(feature); 65 if ((objects = map.features.get(Obj.GATCON)) != null) for (Feature feature : objects) locks(feature); 66 if ((objects = map.features.get(Obj.DISMAR)) != null) for (Feature feature : objects) distances(feature); 67 if ((objects = map.features.get(Obj.HULKES)) != null) for (Feature feature : objects) ports(feature); 68 if ((objects = map.features.get(Obj.CRANES)) != null) for (Feature feature : objects) ports(feature); 69 if ((objects = map.features.get(Obj.LNDMRK)) != null) for (Feature feature : objects) landmarks(feature); 70 if ((objects = map.features.get(Obj.MORFAC)) != null) for (Feature feature : objects) moorings(feature); 71 if ((objects = map.features.get(Obj.NOTMRK)) != null) for (Feature feature : objects) notices(feature); 72 if ((objects = map.features.get(Obj.SMCFAC)) != null) for (Feature feature : objects) marinas(feature); 73 if ((objects = map.features.get(Obj.BRIDGE)) != null) for (Feature feature : objects) bridges(feature); 74 if ((objects = map.features.get(Obj.LITMAJ)) != null) for (Feature feature : objects) lights(feature); 75 if ((objects = map.features.get(Obj.LITMIN)) != null) for (Feature feature : objects) lights(feature); 76 if ((objects = map.features.get(Obj.LIGHTS)) != null) for (Feature feature : objects) lights(feature); 77 if ((objects = map.features.get(Obj.SISTAT)) != null) for (Feature feature : objects) signals(feature); 78 if ((objects = map.features.get(Obj.SISTAW)) != null) for (Feature feature : objects) signals(feature); 79 if ((objects = map.features.get(Obj.CGUSTA)) != null) for (Feature feature : objects) signals(feature); 80 if ((objects = map.features.get(Obj.RDOSTA)) != null) for (Feature feature : objects) signals(feature); 81 if ((objects = map.features.get(Obj.RADSTA)) != null) for (Feature feature : objects) signals(feature); 82 if ((objects = map.features.get(Obj.RSCSTA)) != null) for (Feature feature : objects) signals(feature); 83 if ((objects = map.features.get(Obj.PILBOP)) != null) for (Feature feature : objects) signals(feature); 84 if ((objects = map.features.get(Obj.WTWGAG)) != null) for (Feature feature : objects) gauges(feature); 85 if ((objects = map.features.get(Obj.OFSPLF)) != null) for (Feature feature : objects) platforms(feature); 86 if ((objects = map.features.get(Obj.WRECKS)) != null) for (Feature feature : objects) wrecks(feature); 87 if ((objects = map.features.get(Obj.LITVES)) != null) for (Feature feature : objects) floats(feature); 88 if ((objects = map.features.get(Obj.LITFLT)) != null) for (Feature feature : objects) floats(feature); 89 if ((objects = map.features.get(Obj.BOYINB)) != null) for (Feature feature : objects) floats(feature); 90 if ((objects = map.features.get(Obj.BOYLAT)) != null) for (Feature feature : objects) buoys(feature); 91 if ((objects = map.features.get(Obj.BOYCAR)) != null) for (Feature feature : objects) buoys(feature); 92 if ((objects = map.features.get(Obj.BOYISD)) != null) for (Feature feature : objects) buoys(feature); 93 if ((objects = map.features.get(Obj.BOYSAW)) != null) for (Feature feature : objects) buoys(feature); 94 if ((objects = map.features.get(Obj.BOYSPP)) != null) for (Feature feature : objects) buoys(feature); 95 if ((objects = map.features.get(Obj.BOYWTW)) != null) for (Feature feature : objects) buoys(feature); 96 if ((objects = map.features.get(Obj.BCNLAT)) != null) for (Feature feature : objects) beacons(feature); 97 if ((objects = map.features.get(Obj.BCNCAR)) != null) for (Feature feature : objects) beacons(feature); 98 if ((objects = map.features.get(Obj.BCNISD)) != null) for (Feature feature : objects) beacons(feature); 99 if ((objects = map.features.get(Obj.BCNSAW)) != null) for (Feature feature : objects) beacons(feature); 100 if ((objects = map.features.get(Obj.BCNSPP)) != null) for (Feature feature : objects) beacons(feature); 101 if ((objects = map.features.get(Obj.BCNWTW)) != null) for (Feature feature : objects) beacons(feature); 99 102 } 100 103 101 private static void shoreline(ArrayList<Feature> features) { 102 // for (Feature feature : features) { 103 // } 104 } 105 private static void pipelines(ArrayList<Feature> features) {} 106 private static void cables(ArrayList<Feature> features) {} 107 private static void separation(ArrayList<Feature> features) {} 108 private static void areas(ArrayList<Feature> features) {} 109 private static void obstructions(ArrayList<Feature> features) {} 110 private static void waterways(ArrayList<Feature> features) {} 111 private static void transits(ArrayList<Feature> features) {} 112 private static void harbours(ArrayList<Feature> features) {} 113 private static void locks(ArrayList<Feature> features) {} 114 private static void distances(ArrayList<Feature> features) {} 115 private static void ports(ArrayList<Feature> features) {} 116 private static void landmarks(ArrayList<Feature> features) { 117 for (Feature feature : features) { 118 ArrayList<CatLMK> cats = (ArrayList<CatLMK>) Renderer.getAttVal(feature, feature.type, 0, Att.CATLMK); 119 Symbol catSym = Landmarks.Shapes.get(cats.get(0)); 120 ArrayList<FncFNC> fncs = (ArrayList<FncFNC>) Renderer.getAttVal(feature, feature.type, 0, Att.FUNCTN); 121 Symbol fncSym = Landmarks.Funcs.get(fncs.get(0)); 122 if ((fncs.get(0) == FncFNC.FNC_CHCH) && (cats.get(0) == CatLMK.LMK_TOWR)) catSym = Landmarks.ChurchTower; 123 if ((cats.get(0) == CatLMK.LMK_UNKN) && (fncs.get(0) == FncFNC.FNC_UNKN) && (feature.objs.get(Obj.LIGHTS) != null)) catSym = Beacons.LightMajor; 124 if (cats.get(0) == CatLMK.LMK_RADR) fncSym = Landmarks.RadioTV; 125 Renderer.symbol(feature, catSym, feature.type, null); 126 Renderer.symbol(feature, fncSym, feature.type, null); 127 } 128 } 129 private static void moorings(ArrayList<Feature> features) { 130 for (Feature feature : features) { 131 CatMOR cat = (CatMOR) Renderer.getAttVal(feature, feature.type, 0, Att.CATMOR); 104 private static void shoreline(Feature feature) { 105 CatSLC cat = (CatSLC) Renderer.getAttVal(feature, feature.type, 0, Att.CATSLC); 106 if (zoom >= 12) { 132 107 switch (cat) { 133 case MOR_DLPN: 134 Renderer.symbol(feature, Harbours.Dolphin, feature.type, null); 135 break; 136 case MOR_DDPN: 137 Renderer.symbol(feature, Harbours.DeviationDolphin, feature.type, null); 138 break; 139 case MOR_BLRD: 140 case MOR_POST: 141 Renderer.symbol(feature, Harbours.Bollard, feature.type, null); 142 break; 143 case MOR_BUOY: 144 BoySHP shape = (BoySHP) Renderer.getAttVal(feature, feature.type, 0, Att.BOYSHP); 145 if (shape == BoySHP.BOY_UNKN) shape = BoySHP.BOY_SPHR; 146 Renderer.symbol(feature, Buoys.Shapes.get(shape), feature.type, null); 147 break; 148 } 149 } 150 } 151 private static void notices(ArrayList<Feature> features) {} 152 private static void marinas(ArrayList<Feature> features) {} 153 private static void bridges(ArrayList<Feature> features) {} 154 private static void wrecks(ArrayList<Feature> features) {} 155 private static void gauges(ArrayList<Feature> features) {} 156 private static void lights(ArrayList<Feature> features) { 157 for (Feature feature : features) { 158 switch (feature.type) { 159 case LITMAJ: 160 Renderer.symbol(feature, Beacons.LightMajor, feature.type, null); 161 break; 162 case LITMIN: 163 case LIGHTS: 164 Renderer.symbol(feature, Beacons.LightMinor, feature.type, null); 165 break; 166 } 167 } 168 } 169 private static void signals(ArrayList<Feature> features) { 170 for (Feature feature : features) { 171 switch (feature.type) { 172 case SISTAT: 173 case SISTAW: 174 Renderer.symbol(feature, Harbours.SignalStation, feature.type, null); 175 break; 176 case RDOSTA: 177 Renderer.symbol(feature, Harbours.SignalStation, feature.type, null); 178 break; 179 case RADSTA: 180 Renderer.symbol(feature, Harbours.SignalStation, feature.type, null); 181 break; 182 case PILBOP: 183 Renderer.symbol(feature, Harbours.SignalStation, feature.type, null); 184 break; 185 case CGUSTA: 186 // Renderer.symbol(feature, Harbours.CGuardStation, feature.type, null); 187 break; 188 case RSCSTA: 189 // Renderer.symbol(feature, Harbours.RescueStation, feature.type, null); 190 break; 191 } 192 } 193 } 194 private static void floats(ArrayList<Feature> features) { 195 for (Feature feature : features) { 196 switch (feature.type) { 197 case LITVES: 198 Renderer.symbol(feature, Buoys.Super, feature.type, null); 199 break; 200 case LITFLT: 201 Renderer.symbol(feature, Buoys.Float, feature.type, null); 202 break; 203 case BOYINB: 204 Renderer.symbol(feature, Buoys.Storage, feature.type, null); 205 break; 206 } 108 case SLC_TWAL: 109 WatLEV lev = (WatLEV) Renderer.getAttVal(feature, feature.type, 0, Att.WATLEV); 110 if (lev == WatLEV.LEV_CVRS) { 111 Renderer.lineVector(feature, new LineStyle(new BasicStroke(10, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 1, new float[] { 40, 40 }, 0), Color.black, null)); 112 if (zoom >= 15) 113 Renderer.lineText(feature, "(covers)", new TextStyle(new Font("Arial", Font.PLAIN, 80)), 0.5, new Delta(Handle.TC, AffineTransform.getTranslateInstance(0, 20))); 114 } else { 115 Renderer.lineVector(feature, new LineStyle(new BasicStroke(10, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND), Color.black, null)); 116 } 117 if (zoom >= 15) 118 Renderer.lineText(feature, "Training Wall", new TextStyle(new Font("Arial", Font.PLAIN, 80)), 0.5, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -20))); 119 } 120 } 121 } 122 private static void pipelines(Feature feature) { 123 if (zoom >= 14) { 124 if (feature.type == Obj.PIPSOL) { 125 Renderer.lineSymbols(feature, Areas.Pipeline, 1.0, null, 0); 126 } else if (feature.type == Obj.PIPOHD) { 127 128 } 129 } 130 } 131 private static void cables(Feature feature) { 132 if (zoom >= 14) { 133 if (feature.type == Obj.CBLSUB) { 134 Renderer.lineSymbols(feature, Areas.Cable, 0.0, null, 0); 135 } else if (feature.type == Obj.CBLOHD) { 136 137 } 138 } 139 } 140 private static void separation(Feature feature) { 141 switch (feature.type) { 142 case TSEZNE: 143 case TSSCRS: 144 case TSSRON: 145 if (zoom <= 15) 146 Renderer.lineVector(feature, new LineStyle(null, null, new Color(0x80c480ff, true))); 147 else 148 Renderer.lineVector(feature, new LineStyle(new BasicStroke(20, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND), new Color(0x80c480ff, true), null)); 149 AttItem name = feature.atts.get(Att.OBJNAM); 150 if ((zoom >= 10) && (name != null)) 151 Renderer.labelText(feature, (String) name.val, new TextStyle(new Font("Arial", Font.BOLD, 150)), null); 152 break; 153 case TSELNE: 154 Renderer.lineVector(feature, new LineStyle(new BasicStroke(20, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND), new Color(0x80c480ff, true), null)); 155 break; 156 case TSSLPT: 157 Renderer.lineSymbols(feature, Areas.LaneArrow, 0.5, null, 0); 158 break; 159 case TSSBND: 160 Renderer.lineVector(feature, new LineStyle(new BasicStroke(20, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 1, new float[] { 40, 40 }, 0), new Color(0x80c480ff, true), null)); 161 break; 162 } 163 } 164 private static void areas(Feature feature) { 165 AttItem name = feature.atts.get(Att.OBJNAM); 166 switch (feature.type) { 167 case SPLARE: 168 if (zoom >= 12) { 169 Renderer.symbol(feature, Areas.Plane, Obj.SPLARE, null); 170 Renderer.lineSymbols(feature, Areas.Restricted, 0.5, Areas.LinePlane, 10); 171 } 172 if ((zoom >= 15) && (name != null)) 173 Renderer.labelText(feature, (String) name.val, new TextStyle(new Font("Arial", Font.BOLD, 80)), new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -90))); 174 break; 175 case MARCUL: 176 if (zoom >= 14) 177 Renderer.symbol(feature, Areas.MarineFarm, Obj.MARCUL, null); 178 if (zoom >= 16) 179 Renderer.lineVector(feature, new LineStyle(new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 1, new float[] { 10, 10 }, 0), Color.black, null)); 180 break; 181 case FAIRWY: 182 if (Renderer.calcArea(feature) > 2.0) { 183 if (zoom < 16) 184 Renderer.lineVector(feature, new LineStyle(new BasicStroke(8, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 1, new float[] { 50, 50 }, 0), new Color(0xc480ff), new Color(0x40ffffff, true))); 185 else 186 Renderer.lineVector(feature, new LineStyle(new BasicStroke(8, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 1, new float[] { 50, 50 }, 0), new Color(0xc480ff), null)); 187 } else { 188 if (zoom >= 14) 189 Renderer.lineVector(feature, new LineStyle(null, null, new Color(0x40ffffff, true))); 190 } 191 break; 192 case DRGARE: 193 if (zoom < 16) 194 Renderer.lineVector(feature, new LineStyle(new BasicStroke(8, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 1, new float[] { 25, 25 }, 0), Color.black, new Color(0x40ffffff, true))); 195 else 196 Renderer.lineVector(feature, new LineStyle(new BasicStroke(8, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 1, new float[] { 25, 25 }, 0), Color.black, null)); 197 if ((zoom >= 12) && (name != null)) 198 Renderer.labelText(feature, (String) name.val, new TextStyle(new Font("Arial", Font.PLAIN, 100)), new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 0))); 199 break; 200 case RESARE: 201 if (zoom >= 12) { 202 Renderer.lineSymbols(feature, Areas.Restricted, 1.0, null, 0); 203 if ((CatREA)Renderer.getAttVal(feature, feature.type, 0, Att.CATREA) == CatREA.REA_NWAK) 204 Renderer.symbol(feature, Areas.NoWake, Obj.RESARE, null); 205 } 206 break; 207 case OSPARE: 208 if ((CatPRA)Renderer.getAttVal(feature, feature.type, 0, Att.CATPRA) == CatPRA.PRA_WFRM) { 209 Renderer.symbol(feature, Areas.WindFarm, Obj.OSPARE, null); 210 Renderer.lineVector(feature, new LineStyle(new BasicStroke(20, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 1, new float[] { 40, 40 }, 0), Color.black, null)); 211 if ((zoom >= 15) && (name != null)) 212 Renderer.labelText(feature, (String) name.val, new TextStyle(new Font("Arial", Font.BOLD, 80)), new Delta(Handle.TC, AffineTransform.getTranslateInstance(0, 10))); 213 } 214 break; 215 case SEAARE: 216 break; 217 case SNDWAV: 218 // if (zoom>=12)) area("fill:url(#sandwaves)"); 219 break; 220 } 221 /* 222 if (is_type("sea_area")) { 223 if (has_attribute("category")) { 224 make_string(""); 225 attribute_switch("category") 226 attribute_case("reach") { if (zoom >= 10) add_string("font-family:Arial;font-weight:normal;font-style:italic;font-size:150;text-anchor:middle") } 227 attribute_case("bay") { if (zoom >= 12) add_string("font-family:Arial;font-weight:normal;font-style:italic;font-size:150;text-anchor:middle") } 228 attribute_case("shoal") { if (zoom >= 14) { 229 if (is_area) { 230 area("stroke:#c480ff;stroke-width:4;stroke-dasharray:25,25;fill:none"); 231 if (has_item_attribute("name")) text(item_attribute("name"), "font-family:Arial;font-weight:normal;font-style:italic;font-size:75;text-anchor:middle", 0, -40); 232 text("(Shoal)", "font-family:Arial;font-weight:normal;font-size:60;text-anchor:middle", 0, 0); 233 } else if (is_line) { 234 if (has_item_attribute("name")) way_text(item_attribute("name"), "font-family:Arial;font-weight:normal;font-style:italic;font-size:75;text-anchor:middle", 0.5, -40, line("stroke:none;fill:none")); 235 way_text("(Shoal)", "font-family:Arial;font-weight:normal;font-size:60;text-anchor:middle", 0.5, 0, line("stroke:none;fill:none")); 236 } else { 237 if (has_item_attribute("name")) text(item_attribute("name"), "font-family:Arial;font-weight:normal;font-style:italic;font-size:75;text-anchor:middle", 0, -40); 238 text("(Shoal)", "font-family:Arial;font-weight:normal;font-size:60;text-anchor:middle", 0, 0); 239 } 240 } 241 } 242 attribute_case("gat|narrows") { if (zoom >= 12) add_string("font-family:Arial;font-weight:normal;font-style:italic;font-size:100;text-anchor:middle") } 243 end_switch 244 if ((strlen(string) > 0) && !attribute_test("category", "shoal")) { 245 int ref = line("stroke:none;fill:none"); 246 if (ref != 0) { 247 if (has_item_attribute("name")) way_text(item_attribute("name"), string, 0.5, 0, ref); 248 } else { 249 if (has_item_attribute("name")) text(item_attribute("name"), string, 0, 0); 250 } 251 } 252 free_string 253 } 254 } 255 */ 256 } 257 258 private static void obstructions(Feature feature) { 259 if ((zoom >= 14) && (feature.type == Obj.UWTROC)) { 260 WatLEV lvl = (WatLEV) Renderer.getAttVal(feature, feature.type, 0, Att.WATLEV); 261 switch (lvl) { 262 case LEV_CVRS: 263 Renderer.symbol(feature, Areas.RockC, feature.type, null); 264 break; 265 case LEV_AWSH: 266 Renderer.symbol(feature, Areas.RockA, feature.type, null); 267 break; 268 default: 269 Renderer.symbol(feature, Areas.Rock, feature.type, null); 270 } 271 } else { 272 Renderer.symbol(feature, Areas.Rock, feature.type, null); 273 } 274 } 275 private static void waterways(Feature feature) { 276 if ((zoom >= 14) && (feature.atts.get(Att.OBJNAM) != null)) { 277 // lineText(item_attribute("name"), "font-family:Arial;font-weight:bold;font-size:80;text-anchor:middle", 0.5, 15, line("stroke:none;fill:none")); 278 } 279 } 280 private static void transits(Feature feature) { 281 } 282 private static void harbours(Feature feature) { 283 } 284 private static void locks(Feature feature) { 285 } 286 private static void distances(Feature feature) { 287 } 288 private static void ports(Feature feature) { 289 } 290 private static void landmarks(Feature feature) { 291 ArrayList<CatLMK> cats = (ArrayList<CatLMK>) Renderer.getAttVal(feature, feature.type, 0, Att.CATLMK); 292 Symbol catSym = Landmarks.Shapes.get(cats.get(0)); 293 ArrayList<FncFNC> fncs = (ArrayList<FncFNC>) Renderer.getAttVal(feature, feature.type, 0, Att.FUNCTN); 294 Symbol fncSym = Landmarks.Funcs.get(fncs.get(0)); 295 if ((fncs.get(0) == FncFNC.FNC_CHCH) && (cats.get(0) == CatLMK.LMK_TOWR)) 296 catSym = Landmarks.ChurchTower; 297 if ((cats.get(0) == CatLMK.LMK_UNKN) && (fncs.get(0) == FncFNC.FNC_UNKN) && (feature.objs.get(Obj.LIGHTS) != null)) 298 catSym = Beacons.LightMajor; 299 if (cats.get(0) == CatLMK.LMK_RADR) 300 fncSym = Landmarks.RadioTV; 301 Renderer.symbol(feature, catSym, feature.type, null); 302 Renderer.symbol(feature, fncSym, feature.type, null); 303 } 304 private static void moorings(Feature feature) { 305 CatMOR cat = (CatMOR) Renderer.getAttVal(feature, feature.type, 0, Att.CATMOR); 306 switch (cat) { 307 case MOR_DLPN: 308 Renderer.symbol(feature, Harbours.Dolphin, feature.type, null); 309 break; 310 case MOR_DDPN: 311 Renderer.symbol(feature, Harbours.DeviationDolphin, feature.type, null); 312 break; 313 case MOR_BLRD: 314 case MOR_POST: 315 Renderer.symbol(feature, Harbours.Bollard, feature.type, null); 316 break; 317 case MOR_BUOY: 318 BoySHP shape = (BoySHP) Renderer.getAttVal(feature, feature.type, 0, Att.BOYSHP); 319 if (shape == BoySHP.BOY_UNKN) 320 shape = BoySHP.BOY_SPHR; 321 Renderer.symbol(feature, Buoys.Shapes.get(shape), feature.type, null); 322 break; 323 } 324 } 325 private static void notices(Feature feature) { 326 } 327 private static void marinas(Feature feature) { 328 } 329 private static void bridges(Feature feature) { 330 } 331 private static void wrecks(Feature feature) { 332 if (zoom >= 14) { 333 CatWRK cat = (CatWRK) Renderer.getAttVal(feature, feature.type, 0, Att.CATWRK); 334 switch (cat) { 335 case WRK_DNGR: 336 case WRK_MSTS: 337 Renderer.symbol(feature, Areas.WreckD, feature.type, null); 338 break; 339 case WRK_HULS: 340 Renderer.symbol(feature, Areas.WreckS, feature.type, null); 341 break; 342 default: 343 Renderer.symbol(feature, Areas.WreckND, feature.type, null); 344 } 345 } else { 346 Renderer.symbol(feature, Areas.WreckND, feature.type, null); 347 } 348 } 349 private static void gauges(Feature feature) { 350 } 351 private static void lights(Feature feature) { 352 switch (feature.type) { 353 case LITMAJ: 354 Renderer.symbol(feature, Beacons.LightMajor, feature.type, null); 355 break; 356 case LITMIN: 357 case LIGHTS: 358 Renderer.symbol(feature, Beacons.LightMinor, feature.type, null); 359 break; 360 } 361 } 362 private static void signals(Feature feature) { 363 switch (feature.type) { 364 case SISTAT: 365 case SISTAW: 366 Renderer.symbol(feature, Harbours.SignalStation, feature.type, null); 367 break; 368 case RDOSTA: 369 Renderer.symbol(feature, Harbours.SignalStation, feature.type, null); 370 break; 371 case RADSTA: 372 Renderer.symbol(feature, Harbours.SignalStation, feature.type, null); 373 break; 374 case PILBOP: 375 Renderer.symbol(feature, Harbours.SignalStation, feature.type, null); 376 break; 377 case CGUSTA: 378 Renderer.symbol(feature, Harbours.CoastGStation, feature.type, null); 379 break; 380 case RSCSTA: 381 Renderer.symbol(feature, Harbours.RescueStation, feature.type, null); 382 break; 383 } 384 } 385 private static void floats(Feature feature) { 386 switch (feature.type) { 387 case LITVES: 388 Renderer.symbol(feature, Buoys.Super, feature.type, null); 389 break; 390 case LITFLT: 391 Renderer.symbol(feature, Buoys.Float, feature.type, null); 392 break; 393 case BOYINB: 394 Renderer.symbol(feature, Buoys.Storage, feature.type, null); 395 break; 396 } 397 if (feature.objs.get(Obj.TOPMAR) != null) 398 Renderer.symbol(feature, Topmarks.Shapes.get(feature.objs.get(Obj.TOPMAR).get(0).get(Att.TOPSHP).val), Obj.TOPMAR, Topmarks.Floats); 399 } 400 private static void platforms(Feature feature) { 401 Renderer.symbol(feature, Landmarks.Platform, feature.type, null); 402 } 403 private static void buoys(Feature feature) { 404 BoySHP shape = (BoySHP) Renderer.getAttVal(feature, feature.type, 0, Att.BOYSHP); 405 Renderer.symbol(feature, Buoys.Shapes.get(shape), feature.type, null); 406 if (feature.objs.get(Obj.TOPMAR) != null) { 407 Renderer.symbol(feature, Topmarks.Shapes.get(feature.objs.get(Obj.TOPMAR).get(0).get(Att.TOPSHP).val), Obj.TOPMAR, Topmarks.Buoys.get(shape)); 408 } 409 } 410 private static void beacons(Feature feature) { 411 BcnSHP shape = (BcnSHP) Renderer.getAttVal(feature, feature.type, 0, Att.BCNSHP); 412 if (((shape == BcnSHP.BCN_PRCH) || (shape == BcnSHP.BCN_WTHY)) && (feature.type == Obj.BCNLAT)) { 413 CatLAM cat = (CatLAM) Renderer.getAttVal(feature, feature.type, 0, Att.CATLAM); 414 switch (cat) { 415 case LAM_PORT: 416 if (shape == BcnSHP.BCN_PRCH) 417 Renderer.symbol(feature, Beacons.PerchPort, feature.type, null); 418 else 419 Renderer.symbol(feature, Beacons.WithyPort, feature.type, null); 420 break; 421 case LAM_STBD: 422 if (shape == BcnSHP.BCN_PRCH) 423 Renderer.symbol(feature, Beacons.PerchStarboard, feature.type, null); 424 else 425 Renderer.symbol(feature, Beacons.WithyStarboard, feature.type, null); 426 break; 427 default: 428 Renderer.symbol(feature, Beacons.Stake, feature.type, null); 429 } 430 } else { 431 Renderer.symbol(feature, Beacons.Shapes.get(shape), feature.type, null); 207 432 if (feature.objs.get(Obj.TOPMAR) != null) 208 Renderer.symbol(feature, Topmarks.Shapes.get(feature.objs.get(Obj.TOPMAR).get(0).get(Att.TOPSHP).val), Obj.TOPMAR, Topmarks.Floats); 209 } 210 } 211 private static void platforms(ArrayList<Feature> features) { 212 for (Feature feature : features) { 213 Renderer.symbol(feature, Landmarks.Platform, feature.type, null); 214 } 215 } 216 private static void buoys(ArrayList<Feature> features) { 217 for (Feature feature : features) { 218 BoySHP shape = (BoySHP) Renderer.getAttVal(feature, feature.type, 0, Att.BOYSHP); 219 Renderer.symbol(feature, Buoys.Shapes.get(shape), feature.type, null); 220 if (feature.objs.get(Obj.TOPMAR) != null) { 221 Renderer.symbol(feature, Topmarks.Shapes.get(feature.objs.get(Obj.TOPMAR).get(0).get(Att.TOPSHP).val), Obj.TOPMAR, Topmarks.Buoys.get(shape)); 222 } 223 } 224 } 225 private static void beacons(ArrayList<Feature> features) { 226 for (Feature feature : features) { 227 BcnSHP shape = (BcnSHP) Renderer.getAttVal(feature, feature.type, 0, Att.BCNSHP); 228 if (((shape == BcnSHP.BCN_PRCH) || (shape == BcnSHP.BCN_WTHY)) && (feature.type == Obj.BCNLAT)) { 229 CatLAM cat = (CatLAM) Renderer.getAttVal(feature, feature.type, 0, Att.CATLAM); 230 switch (cat) { 231 case LAM_PORT: 232 if (shape == BcnSHP.BCN_PRCH) 233 Renderer.symbol(feature, Beacons.PerchPort, feature.type, null); 234 else 235 Renderer.symbol(feature, Beacons.WithyPort, feature.type, null); 236 break; 237 case LAM_STBD: 238 if (shape == BcnSHP.BCN_PRCH) 239 Renderer.symbol(feature, Beacons.PerchStarboard, feature.type, null); 240 else 241 Renderer.symbol(feature, Beacons.WithyStarboard, feature.type, null); 242 break; 243 default: 244 Renderer.symbol(feature, Beacons.Stake, feature.type, null); 245 } 246 } else { 247 Renderer.symbol(feature, Beacons.Shapes.get(shape), feature.type, null); 248 if (feature.objs.get(Obj.TOPMAR) != null) 249 Renderer.symbol(feature, Topmarks.Shapes.get(feature.objs.get(Obj.TOPMAR).get(0).get(Att.TOPSHP).val), Obj.TOPMAR, Topmarks.Beacons); 250 } 433 Renderer.symbol(feature, Topmarks.Shapes.get(feature.objs.get(Obj.TOPMAR).get(0).get(Att.TOPSHP).val), Obj.TOPMAR, Topmarks.Beacons); 251 434 } 252 435 } -
applications/editors/josm/plugins/smed2/src/seamap/SeaMap.java
r29184 r29198 38 38 39 39 public class AttMap extends EnumMap<Att, AttItem> { 40 private static final long serialVersionUID = 1L;41 40 public AttMap() { 42 41 super(Att.class); … … 45 44 46 45 public class ObjTab extends HashMap<Integer, AttMap> { 47 private static final long serialVersionUID = 1L;48 46 public ObjTab() { 49 47 super(); … … 52 50 53 51 public class ObjMap extends EnumMap<Obj, ObjTab> { 54 private static final long serialVersionUID = 1L;55 52 public ObjMap() { 56 53 super(Obj.class); … … 59 56 60 57 public class NodeTab extends HashMap<Long, Coord> { 61 private static final long serialVersionUID = 1L;62 58 public NodeTab() { 63 59 super(); … … 66 62 67 63 public class WayTab extends HashMap<Long, ArrayList<Long>> { 68 private static final long serialVersionUID = 1L;69 64 public WayTab() { 70 65 super(); … … 73 68 74 69 public class FtrMap extends EnumMap<Obj, ArrayList<Feature>> { 75 private static final long serialVersionUID = 1L;76 70 public FtrMap() { 77 71 super(Obj.class); … … 80 74 81 75 public class FtrTab extends HashMap<Long, Feature> { 82 private static final long serialVersionUID = 1L;83 76 public FtrTab() { 84 77 super(); … … 131 124 132 125 public void addNode(long id, double lat, double lon) { 133 nodes.put(id, new Coord( lat, lon));126 nodes.put(id, new Coord(Math.toRadians(lat), Math.toRadians(lon))); 134 127 feature = new Feature(); 135 128 feature.refs = id; … … 138 131 139 132 public void moveNode(long id, double lat, double lon) { 140 nodes.put(id, new Coord( lat, lon));133 nodes.put(id, new Coord(Math.toRadians(lat), Math.toRadians(lon))); 141 134 } 142 135 -
applications/editors/josm/plugins/smed2/src/smed2/MapImage.java
r29184 r29198 87 87 88 88 public Point2D getPoint(Coord coord) { 89 return Main.map.mapView.getPoint2D(new LatLon(coord.lat ,coord.lon));89 return Main.map.mapView.getPoint2D(new LatLon(Math.toDegrees(coord.lat), Math.toDegrees(coord.lon))); 90 90 } 91 91 } -
applications/editors/josm/plugins/smed2/src/smed2/Smed2Action.java
r29189 r29198 27 27 public class Smed2Action extends JosmAction implements EditLayerChangeListener, SelectionChangedListener { 28 28 29 private static final long serialVersionUID = 1L;30 29 private static String editor = tr("SeaMap Editor"); 31 30 public static JFrame editFrame = null; … … 42 41 @Override 43 42 public void dataChanged(DataChangedEvent e) { 44 // reMap();43 System.out.println("DataChangedEvent"); 45 44 } 46 45 … … 55 54 @Override 56 55 public void otherDatasetChange(AbstractDatasetChangedEvent e) { 57 // reMap();56 System.out.println("AbstractDatasetChangedEvent"); 58 57 } 59 58 60 59 @Override 61 60 public void primitivesAdded(PrimitivesAddedEvent e) { 62 // reMap();61 System.out.println("PrimitivesAddedEvent"); 63 62 } 64 63 65 64 @Override 66 65 public void primitivesRemoved(PrimitivesRemovedEvent e) { 67 // reMap();66 System.out.println("PrimitivesRemovedEvent"); 68 67 } 69 68 70 69 @Override 71 70 public void relationMembersChanged(RelationMembersChangedEvent e) { 72 // reMap();71 System.out.println("RelationMembersChangedEvent"); 73 72 } 74 73 75 74 @Override 76 75 public void tagsChanged(TagsChangedEvent e) { 77 // reMap();76 System.out.println("TagsChangedEvent"); 78 77 } 79 78 80 79 @Override 81 80 public void wayNodesChanged(WayNodesChangedEvent e) { 82 // reMap();81 System.out.println("WayNodesChangedEvent"); 83 82 } 84 83 }; -
applications/editors/josm/plugins/smed2/src/symbols/Areas.java
r29186 r29198 28 28 static { 29 29 Cable.add(new Instr(Prim.BBOX, new Rectangle(-30,-60,60,60))); 30 Cable.add(new Instr(Prim.STRK, new BasicStroke(8 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND)));30 Cable.add(new Instr(Prim.STRK, new BasicStroke(8, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND))); 31 31 Cable.add(new Instr(Prim.FILL, new Color(0xc480ff))); 32 32 Path2D.Double p = new Path2D.Double(); p.moveTo(0,0); p.curveTo(-13,-13,-13,-17,0,-30); p.curveTo(13,-43,13,-47,0,-60); … … 35 35 public static final Symbol LaneArrow = new Symbol(); 36 36 static { 37 LaneArrow.add(new Instr(Prim.STRK, new BasicStroke(10 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));37 LaneArrow.add(new Instr(Prim.STRK, new BasicStroke(10, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER))); 38 38 LaneArrow.add(new Instr(Prim.FILL, new Color(0x80c480ff, true))); 39 39 Path2D.Double p = new Path2D.Double(); p.moveTo(15,0); p.lineTo(15,-195); p.lineTo(40,-195); … … 53 53 public static final Symbol MarineFarm = new Symbol(); 54 54 static { 55 MarineFarm.add(new Instr(Prim.STRK, new BasicStroke(3 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));55 MarineFarm.add(new Instr(Prim.STRK, new BasicStroke(3, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 56 56 MarineFarm.add(new Instr(Prim.FILL, Color.black)); 57 57 Path2D.Double p = new Path2D.Double(); p.moveTo(-23,12); p.lineTo(-23,23); p.lineTo(23,23); p.lineTo(23,12); p.moveTo(-8,15); p.lineTo(-8,23); p.moveTo(8,15); p.lineTo(8,23); … … 63 63 public static final Symbol NoWake = new Symbol(); 64 64 static { 65 NoWake.add(new Instr(Prim.STRK, new BasicStroke(12 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));65 NoWake.add(new Instr(Prim.STRK, new BasicStroke(12, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 66 66 NoWake.add(new Instr(Prim.FILL, new Color(0xa30075))); 67 67 Path2D.Double p = new Path2D.Double(); p.moveTo(-60,20); p.curveTo(-28,20,-32,0,0,0); p.curveTo(32,0,28,20,60,20); p.moveTo(-60,0); p.curveTo(-28,0,-32,-20,0,-20); p.curveTo(32,-20,28,0,60,0); 68 68 NoWake.add(new Instr(Prim.PLIN, p)); 69 NoWake.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));69 NoWake.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 70 70 NoWake.add(new Instr(Prim.LINE, new Line2D.Double(-60,60,60,-60))); 71 71 NoWake.add(new Instr(Prim.LINE, new Line2D.Double(-60,-60,60,60))); … … 74 74 static { 75 75 Pipeline.add(new Instr(Prim.BBOX, new Rectangle(-15,-60,30,60))); 76 Pipeline.add(new Instr(Prim.STRK, new BasicStroke(8 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));76 Pipeline.add(new Instr(Prim.STRK, new BasicStroke(8, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 77 77 Pipeline.add(new Instr(Prim.FILL, new Color(0xc480ff))); 78 78 Pipeline.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-50))); … … 82 82 static { 83 83 Restricted.add(new Instr(Prim.BBOX, new Rectangle(-15,-30,30,30))); 84 Restricted.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));84 Restricted.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 85 85 Restricted.add(new Instr(Prim.FILL, new Color(0xc480ff))); 86 86 Restricted.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-30))); … … 91 91 Rock.add(new Instr(Prim.FILL, new Color(0x80c0ff))); 92 92 Rock.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-30,-30,60,60))); 93 Rock.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1, new float[]{5,5}, 0)));93 Rock.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1, new float[]{5,5}, 0))); 94 94 Rock.add(new Instr(Prim.FILL, Color.black)); 95 95 Rock.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-30,-30,60,60))); 96 Rock.add(new Instr(Prim.STRK, new BasicStroke(5 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));96 Rock.add(new Instr(Prim.STRK, new BasicStroke(5, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 97 97 Rock.add(new Instr(Prim.LINE, new Line2D.Double(-20,0,20,0))); 98 98 Rock.add(new Instr(Prim.LINE, new Line2D.Double(0,-20,0,20))); … … 102 102 RockA.add(new Instr(Prim.FILL, new Color(0x80c0ff))); 103 103 RockA.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-30,-30,60,60))); 104 RockA.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1, new float[]{5,5}, 0)));104 RockA.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1, new float[]{5,5}, 0))); 105 105 RockA.add(new Instr(Prim.FILL, Color.black)); 106 106 RockA.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-30,-30,60,60))); 107 RockA.add(new Instr(Prim.STRK, new BasicStroke(5 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));107 RockA.add(new Instr(Prim.STRK, new BasicStroke(5, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 108 108 RockA.add(new Instr(Prim.LINE, new Line2D.Double(-20,0,20,0))); 109 109 RockA.add(new Instr(Prim.LINE, new Line2D.Double(0,-20,0,20))); … … 117 117 RockC.add(new Instr(Prim.FILL, new Color(0x80c0ff))); 118 118 RockC.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-30,-30,60,60))); 119 RockC.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1, new float[]{5,5}, 0)));119 RockC.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1, new float[]{5,5}, 0))); 120 120 RockC.add(new Instr(Prim.FILL, Color.black)); 121 121 RockC.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-30,-30,60,60))); 122 RockC.add(new Instr(Prim.STRK, new BasicStroke(5 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));122 RockC.add(new Instr(Prim.STRK, new BasicStroke(5, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 123 123 RockC.add(new Instr(Prim.LINE, new Line2D.Double(-20,0,20,0))); 124 124 RockC.add(new Instr(Prim.LINE, new Line2D.Double(-10,17.3,10,-17.3))); … … 128 128 public static final Symbol Seaplane = new Symbol(); 129 129 static { 130 Seaplane.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));130 Seaplane.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 131 131 Seaplane.add(new Instr(Prim.FILL, new Color(0xa30075))); 132 132 Seaplane.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-60,-60,120,120))); … … 135 135 public static final Symbol WindFarm = new Symbol(); 136 136 static { 137 WindFarm.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));137 WindFarm.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 138 138 WindFarm.add(new Instr(Prim.FILL, Color.black)); 139 139 WindFarm.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-100,-100,200,200))); … … 148 148 WreckD.add(new Instr(Prim.FILL, new Color(0x80c0ff))); 149 149 WreckD.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-50,-40,100,80))); 150 WreckD.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1, new float[]{5,5}, 0)));150 WreckD.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1, new float[]{5,5}, 0))); 151 151 WreckD.add(new Instr(Prim.FILL, Color.black)); 152 152 WreckD.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-50,-40,100,80))); 153 WreckD.add(new Instr(Prim.STRK, new BasicStroke(5 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));153 WreckD.add(new Instr(Prim.STRK, new BasicStroke(5, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 154 154 WreckD.add(new Instr(Prim.LINE, new Line2D.Double(-40,0,40,0))); 155 155 WreckD.add(new Instr(Prim.LINE, new Line2D.Double(0,-30,0,30))); … … 159 159 public static final Symbol WreckND = new Symbol(); 160 160 static { 161 WreckND.add(new Instr(Prim.STRK, new BasicStroke(5 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));161 WreckND.add(new Instr(Prim.STRK, new BasicStroke(5, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 162 162 WreckND.add(new Instr(Prim.FILL, Color.black)); 163 163 WreckND.add(new Instr(Prim.LINE, new Line2D.Double(-40,0,40,0))); … … 168 168 public static final Symbol WreckS = new Symbol(); 169 169 static { 170 WreckS.add(new Instr(Prim.STRK, new BasicStroke(3 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));170 WreckS.add(new Instr(Prim.STRK, new BasicStroke(3, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 171 171 WreckS.add(new Instr(Prim.FILL, Color.black)); 172 172 WreckS.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-6,-6,12,12))); -
applications/editors/josm/plugins/smed2/src/symbols/Beacons.java
r29186 r29198 41 41 colours.add(new Instr(Prim.V2, p)); 42 42 Beacon.add(new Instr(Prim.COLR, colours)); 43 Beacon.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));43 Beacon.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 44 44 Beacon.add(new Instr(Prim.FILL, Color.black)); 45 45 Beacon.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 51 51 public static final Symbol Cairn = new Symbol(); 52 52 static { 53 Cairn.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));53 Cairn.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 54 54 Cairn.add(new Instr(Prim.FILL, Color.black)); 55 55 Cairn.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 62 62 public static final Symbol FogSignal = new Symbol(); 63 63 static { 64 FogSignal.add(new Instr(Prim.STRK, new BasicStroke(3 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));64 FogSignal.add(new Instr(Prim.STRK, new BasicStroke(3, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 65 65 FogSignal.add(new Instr(Prim.FILL, Color.black)); 66 66 FogSignal.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); 67 FogSignal.add(new Instr(Prim.STRK, new BasicStroke(10 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));67 FogSignal.add(new Instr(Prim.STRK, new BasicStroke(10, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 68 68 FogSignal.add(new Instr(Prim.FILL, new Color(0xd400d4))); 69 69 FogSignal.add(new Instr(Prim.EARC, new Arc2D.Double(-120.0,-120.0,240.0,240.0,190.0,50.0,Arc2D.OPEN))); … … 97 97 public static final Symbol PerchPort = new Symbol(); 98 98 static { 99 PerchPort.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));99 PerchPort.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 100 100 PerchPort.add(new Instr(Prim.FILL, Color.black)); 101 101 PerchPort.add(new Instr(Prim.LINE, new Line2D.Double(-10,0,10,0))); … … 106 106 public static final Symbol PerchStarboard = new Symbol(); 107 107 static { 108 PerchStarboard.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));108 PerchStarboard.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 109 109 PerchStarboard.add(new Instr(Prim.FILL, Color.black)); 110 110 PerchStarboard.add(new Instr(Prim.LINE, new Line2D.Double(-10,0,10,0))); … … 121 121 public static final Symbol Stake = new Symbol(); 122 122 static { 123 Stake.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));123 Stake.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 124 124 Stake.add(new Instr(Prim.FILL, Color.black)); 125 125 Stake.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-70))); … … 155 155 colours.add(new Instr(Prim.V2, p)); 156 156 Tower.add(new Instr(Prim.COLR, colours)); 157 Tower.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));157 Tower.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 158 158 Tower.add(new Instr(Prim.FILL, Color.black)); 159 159 Tower.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 165 165 public static final Symbol WithyPort = new Symbol(); 166 166 static { 167 WithyPort.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));167 WithyPort.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 168 168 WithyPort.add(new Instr(Prim.FILL, Color.black)); 169 169 WithyPort.add(new Instr(Prim.LINE, new Line2D.Double(-10,0,10,0))); … … 176 176 public static final Symbol WithyStarboard = new Symbol(); 177 177 static { 178 WithyStarboard.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));178 WithyStarboard.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 179 179 WithyStarboard.add(new Instr(Prim.FILL, Color.black)); 180 180 WithyStarboard.add(new Instr(Prim.LINE, new Line2D.Double(-10,0,10,0))); -
applications/editors/josm/plugins/smed2/src/symbols/Buoys.java
r29186 r29198 28 28 colours.add(new Instr(Prim.P1, p)); 29 29 Barrel.add(new Instr(Prim.COLR, colours)); 30 Barrel.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));30 Barrel.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 31 31 Barrel.add(new Instr(Prim.FILL, Color.black)); 32 32 Barrel.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 55 55 colours.add(new Instr(Prim.V2, p)); 56 56 Can.add(new Instr(Prim.COLR, colours)); 57 Can.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));57 Can.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 58 58 Can.add(new Instr(Prim.FILL, Color.black)); 59 59 Can.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 81 81 colours.add(new Instr(Prim.V2, p)); 82 82 Cone.add(new Instr(Prim.COLR, colours)); 83 Cone.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));83 Cone.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 84 84 Cone.add(new Instr(Prim.FILL, Color.black)); 85 85 Cone.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 111 111 colours.add(new Instr(Prim.V2, p)); 112 112 Float.add(new Instr(Prim.COLR, colours)); 113 Float.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));113 Float.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 114 114 Float.add(new Instr(Prim.FILL, Color.black)); 115 115 Float.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 127 127 colours.add(new Instr(Prim.P1, p)); 128 128 Ice.add(new Instr(Prim.COLR, colours)); 129 Ice.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));129 Ice.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 130 130 Ice.add(new Instr(Prim.FILL, Color.black)); 131 131 Ice.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 156 156 colours.add(new Instr(Prim.V2, p)); 157 157 Pillar.add(new Instr(Prim.COLR, colours)); 158 Pillar.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));158 Pillar.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 159 159 Pillar.add(new Instr(Prim.FILL, Color.black)); 160 160 Pillar.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 180 180 colours.add(new Instr(Prim.V2, p)); 181 181 Spar.add(new Instr(Prim.COLR, colours)); 182 Spar.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));182 Spar.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 183 183 Spar.add(new Instr(Prim.FILL, Color.black)); 184 184 Spar.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 206 206 colours.add(new Instr(Prim.V2, p)); 207 207 Sphere.add(new Instr(Prim.COLR, colours)); 208 Sphere.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));208 Sphere.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 209 209 Sphere.add(new Instr(Prim.FILL, Color.black)); 210 210 Sphere.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 215 215 public static final Symbol Storage = new Symbol(); 216 216 static { 217 Storage.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));217 Storage.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 218 218 Storage.add(new Instr(Prim.FILL, Color.black)); 219 219 Storage.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 240 240 colours.add(new Instr(Prim.V2, p)); 241 241 Super.add(new Instr(Prim.COLR, colours)); 242 Super.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));242 Super.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 243 243 Super.add(new Instr(Prim.FILL, Color.black)); 244 244 Super.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); -
applications/editors/josm/plugins/smed2/src/symbols/Facilities.java
r29186 r29198 19 19 private static final Symbol Facility = new Symbol(); 20 20 static { 21 Facility.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));21 Facility.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 22 22 Facility.add(new Instr(Prim.FILL, new Color(0x80ffffff, true))); 23 23 RoundRectangle2D.Double s = new RoundRectangle2D.Double(-29,-29,58,58,15,15); … … 29 29 static { 30 30 Boatlift.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Facilities.Facility, 1.0, 0, 0, null, null))); 31 Boatlift.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND)));31 Boatlift.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND))); 32 32 Boatlift.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-3.7,-19.7,12,12))); 33 33 Boatlift.add(new Instr(Prim.LINE, new Line2D.Double(2.3,-7.7,2.3,-2.0))); … … 37 37 static { 38 38 Boatyard.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Facilities.Facility, 1.0, 0, 0, null, null))); 39 Boatyard.add(new Instr(Prim.STRK, new BasicStroke(8 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));39 Boatyard.add(new Instr(Prim.STRK, new BasicStroke(8, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER))); 40 40 Boatyard.add(new Instr(Prim.LINE, new Line2D.Double(19,19,-8,-8))); 41 41 Path2D.Double p = new Path2D.Double(); p.moveTo(-11.3,-11.3); p.lineTo(-10.5,-17.5); p.lineTo(-14.8,-21.9); p.lineTo(-11.3,-25.4); p.lineTo(-7.4,-21.5); … … 46 46 static { 47 47 Chandler.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Facilities.Facility, 1.0, 0, 0, null, null))); 48 Chandler.add(new Instr(Prim.STRK, new BasicStroke(5 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));48 Chandler.add(new Instr(Prim.STRK, new BasicStroke(5, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 49 49 Chandler.add(new Instr(Prim.ELPS, new Ellipse2D.Double(14,7,10,10))); 50 50 Chandler.add(new Instr(Prim.LINE, new Line2D.Double(-23.0,12.0,14.0,12.0))); … … 97 97 static { 98 98 SailingClub.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Facilities.Facility, 1.0, 0, 0, null, null))); 99 SailingClub.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));99 SailingClub.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 100 100 SailingClub.add(new Instr(Prim.FILL, new Color(0xa30075))); 101 101 SailingClub.add(new Instr(Prim.LINE, new Line2D.Double(-5,20,-5,-20))); … … 106 106 static { 107 107 Shower.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Facilities.Facility, 1.0, 0, 0, null, null))); 108 Shower.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));108 Shower.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 109 109 Shower.add(new Instr(Prim.FILL, new Color(0xa30075))); 110 110 Shower.add(new Instr(Prim.LINE, new Line2D.Double(-4.8,-24.5,6.2,-13.5))); 111 Shower.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));111 Shower.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 112 112 Shower.add(new Instr(Prim.LINE, new Line2D.Double(-18.1,-17.9,-6.1,-21.3))); 113 113 Shower.add(new Instr(Prim.LINE, new Line2D.Double(-13.9,-10.2,-3.9,-17.7))); … … 120 120 static { 121 121 Slipway.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Facilities.Facility, 1.0, 0, 0, null, null))); 122 Slipway.add(new Instr(Prim.STRK, new BasicStroke(3 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));122 Slipway.add(new Instr(Prim.STRK, new BasicStroke(3, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 123 123 Slipway.add(new Instr(Prim.FILL, new Color(0xa30075))); 124 124 Path2D.Double p = new Path2D.Double(); p.moveTo(-24.8,0.1); p.lineTo(-24.8,18.0); p.curveTo(-21.2,18.0,-22.2,16.7,-18.6,16.7); p.curveTo(-15.0,16.7,-16.0,18.0,-12.4,18.0); … … 127 127 Slipway.add(new Instr(Prim.PGON, p)); 128 128 Slipway.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-1.65,-1.9,8,8))); 129 Slipway.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));129 Slipway.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 130 130 Slipway.add(new Instr(Prim.LINE, new Line2D.Double(-24.5,-8.3,-3.1,-2.4))); 131 131 Slipway.add(new Instr(Prim.LINE, new Line2D.Double(9.3,1.1,22.2,4.6))); … … 137 137 static { 138 138 Toilet.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Facilities.Facility, 1.0, 0, 0, null, null))); 139 Toilet.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));139 Toilet.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 140 140 Toilet.add(new Instr(Prim.FILL, new Color(0xa30075))); 141 141 Toilet.add(new Instr(Prim.LINE, new Line2D.Double(0,20,0,-20))); … … 166 166 p.lineTo(8.0,0.0); p.curveTo(8.0,-11.0,-8.0,-11.0,-8.0,0.0); p.closePath(); 167 167 VisitorMooring.add(new Instr(Prim.PGON, p)); 168 VisitorMooring.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));168 VisitorMooring.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 169 169 VisitorMooring.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); 170 170 VisitorMooring.add(new Instr(Prim.LINE, new Line2D.Double(-33,0,-10,0))); 171 171 VisitorMooring.add(new Instr(Prim.LINE, new Line2D.Double(10,0,40,0))); 172 VisitorMooring.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));172 VisitorMooring.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 173 173 VisitorMooring.add(new Instr(Prim.ELPS, new Ellipse2D.Double(6.5,-49.5,12,12))); 174 174 VisitorMooring.add(new Instr(Prim.FILL, Color.white)); -
applications/editors/josm/plugins/smed2/src/symbols/Harbours.java
r29186 r29198 21 21 static { 22 22 Anchor.add(new Instr(Prim.BBOX, new Rectangle(-60,-60,120,120))); 23 Anchor.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));23 Anchor.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 24 24 Anchor.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-59,20,20))); 25 25 Path2D.Double p = new Path2D.Double(); p.moveTo(23.0,-40.0); p.lineTo(23.0,-30.0); p.lineTo(6.0,-30.0); p.lineTo(7.0,31.0); p.quadTo(21.0,29.0,31.0,22.0); … … 31 31 public static final Symbol Yacht = new Symbol(); 32 32 static { 33 Yacht.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));33 Yacht.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 34 34 Path2D.Double p = new Path2D.Double(); p.moveTo(-65.0,50.0); p.curveTo(-36.0,97.0,36.0,97.0,65.0,50.0); p.lineTo(3.0,50.0); p.lineTo(3.0,40.0); p.lineTo(55.0,30.0); 35 35 p.curveTo(32.0,4.0,25.0,-15.0,26.0,-52.0); p.lineTo(1.5,-40.0); p.lineTo(1.0,-64.0); p.lineTo(-2.0,-64.0); p.lineTo(-4.0,50.0); p.closePath(); … … 45 45 static { 46 46 AnchorBerth.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Harbours.Anchorage, 1.0, 0, 0, null, null))); 47 AnchorBerth.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));47 AnchorBerth.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 48 48 AnchorBerth.add(new Instr(Prim.FILL, Color.white)); 49 49 Ellipse2D.Double s = new Ellipse2D.Double(-25,-25,50,50); … … 54 54 public static final Symbol Bollard = new Symbol(); 55 55 static { 56 Bollard.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));56 Bollard.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 57 57 Bollard.add(new Instr(Prim.FILL, Color.white)); 58 58 Ellipse2D.Double s = new Ellipse2D.Double(-10,-10,20,20); … … 63 63 public static final Symbol ClearV = new Symbol(); 64 64 static { 65 ClearV.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));65 ClearV.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 66 66 ClearV.add(new Instr(Prim.FILL, Color.white)); 67 67 ClearV.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-30,-30,60,60))); … … 72 72 ClearV.add(new Instr(Prim.LINE, new Line2D.Double(0,25,0,15))); 73 73 } 74 public static final Symbol CoastGStation = new Symbol(); 75 static{ 76 77 } 74 78 public static final Symbol ContainerCrane = new Symbol(); 75 79 static { 76 ContainerCrane.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));80 ContainerCrane.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 77 81 ContainerCrane.add(new Instr(Prim.FILL, Color.black)); 78 82 ContainerCrane.add(new Instr(Prim.RSHP, new Rectangle2D.Double(-15,-65,30,100))); … … 81 85 public static final Symbol DeviationDolphin = new Symbol(); 82 86 static { 83 DeviationDolphin.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));87 DeviationDolphin.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 84 88 DeviationDolphin.add(new Instr(Prim.FILL, Color.black)); 85 89 Path2D.Double p = new Path2D.Double(); p.moveTo(-30.0,0.0); p.lineTo(30.0,0.0); p.moveTo(0.0,0.0); p.lineTo(0.0,-40.0); … … 89 93 public static final Symbol DistanceI = new Symbol(); 90 94 static { 91 DistanceI.add(new Instr(Prim.STRK, new BasicStroke(3 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));95 DistanceI.add(new Instr(Prim.STRK, new BasicStroke(3, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 92 96 DistanceI.add(new Instr(Prim.FILL, Color.black)); 93 97 DistanceI.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-11,-11,22,22))); … … 95 99 public static final Symbol DistanceU = new Symbol(); 96 100 static { 97 DistanceU.add(new Instr(Prim.STRK, new BasicStroke(3 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));101 DistanceU.add(new Instr(Prim.STRK, new BasicStroke(3, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 98 102 DistanceU.add(new Instr(Prim.FILL, new Color(0xa30075))); 99 103 DistanceU.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-11,-11,22,22))); … … 101 105 public static final Symbol Dolphin = new Symbol(); 102 106 static { 103 Dolphin.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));107 Dolphin.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 104 108 Dolphin.add(new Instr(Prim.FILL, new Color(0xffd400))); 105 109 Path2D.Double p = new Path2D.Double(); p.moveTo(3.8,-9.2); p.lineTo(9.2,-3.8); p.lineTo(9.2,3.8); p.lineTo(3.8,9.2); … … 111 115 public static final Symbol Harbour = new Symbol(); 112 116 static { 113 Harbour.add(new Instr(Prim.STRK, new BasicStroke(15 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));117 Harbour.add(new Instr(Prim.STRK, new BasicStroke(15, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 114 118 Harbour.add(new Instr(Prim.FILL, new Color(0xa30075))); 115 119 Harbour.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-75,-75,150,150))); … … 118 122 public static final Symbol HarbourMaster = new Symbol(); 119 123 static { 120 HarbourMaster.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));124 HarbourMaster.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 121 125 HarbourMaster.add(new Instr(Prim.FILL, Color.black)); 122 126 HarbourMaster.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-35,-50,70,100))); … … 134 138 public static final Symbol Marina = new Symbol(); 135 139 static { 136 Marina.add(new Instr(Prim.STRK, new BasicStroke(15 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));140 Marina.add(new Instr(Prim.STRK, new BasicStroke(15, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 137 141 Marina.add(new Instr(Prim.FILL, new Color(0xa30075))); 138 142 Marina.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Harbours.Yacht, 1.0, 0, 0, null, null))); … … 141 145 public static final Symbol MarinaNF = new Symbol(); 142 146 static { 143 MarinaNF.add(new Instr(Prim.STRK, new BasicStroke(15 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));147 MarinaNF.add(new Instr(Prim.STRK, new BasicStroke(15, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 144 148 MarinaNF.add(new Instr(Prim.FILL, new Color(0xa30075))); 145 149 MarinaNF.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Harbours.Yacht, 1.0, 0, 0, null, null))); … … 147 151 public static final Symbol PortCrane = new Symbol(); 148 152 static { 149 PortCrane.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));153 PortCrane.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 150 154 PortCrane.add(new Instr(Prim.FILL, Color.black)); 151 155 PortCrane.add(new Instr(Prim.EARC, new Arc2D.Double(-36.0,-36.0,72.0,72.0,70.0,-320.0,Arc2D.OPEN))); … … 157 161 Post.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-10,-10,20,20))); 158 162 } 163 public static final Symbol RescueStation = new Symbol(); 164 static{ 165 166 } 159 167 public static final Symbol SignalStation = new Symbol(); 160 168 static { 161 SignalStation.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));169 SignalStation.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 162 170 SignalStation.add(new Instr(Prim.FILL, Color.black)); 163 171 SignalStation.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-25,-25,50,50))); … … 166 174 public static final Symbol TideGauge = new Symbol(); 167 175 static { 168 TideGauge.add(new Instr(Prim.STRK, new BasicStroke(3 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));176 TideGauge.add(new Instr(Prim.STRK, new BasicStroke(3, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 169 177 TideGauge.add(new Instr(Prim.FILL, Color.black)); 170 178 TideGauge.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 172 180 TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(10,0,30,0))); 173 181 TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(0,-10,0,-80))); 174 TideGauge.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));182 TideGauge.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 175 183 TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(-15,-25,15,-25))); 176 184 TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(-25,-45,25,-45))); -
applications/editors/josm/plugins/smed2/src/symbols/Landmarks.java
r29186 r29198 26 26 private static final Symbol Base = new Symbol(); 27 27 static { 28 Base.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));28 Base.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 29 29 Base.add(new Instr(Prim.FILL, Color.black)); 30 30 Base.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20))); … … 36 36 static { 37 37 Chimney.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 38 Chimney.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));38 Chimney.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 39 39 Chimney.add(new Instr(Prim.FILL, Color.black)); 40 40 Path2D.Double p = new Path2D.Double(); p.moveTo(-25.0,0.0); p.lineTo(-10.0,-120.0); p.lineTo(10.0,-120.0); p.lineTo(25.0,0.0); … … 56 56 public static final Symbol ChurchTower = new Symbol(); 57 57 static { 58 ChurchTower.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));58 ChurchTower.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 59 59 ChurchTower.add(new Instr(Prim.FILL, Color.black)); 60 60 ChurchTower.add(new Instr(Prim.RECT, new Rectangle2D.Double(-36,-36,72,72))); … … 64 64 static { 65 65 Cross.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 66 Cross.add(new Instr(Prim.STRK, new BasicStroke(6 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));66 Cross.add(new Instr(Prim.STRK, new BasicStroke(6, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 67 67 Cross.add(new Instr(Prim.FILL, Color.black)); 68 68 Cross.add(new Instr(Prim.LINE, new Line2D.Double(0,-10,0,-150))); … … 72 72 static { 73 73 DishAerial.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 74 DishAerial.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)));74 DishAerial.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL))); 75 75 DishAerial.add(new Instr(Prim.FILL, Color.black)); 76 76 Path2D.Double p = new Path2D.Double(); p.moveTo(-7.8,-6.0); p.lineTo(0.0,-62.0); p.lineTo(7.8,-6.0); p.moveTo(18.0,-109.0); p.lineTo(25.0,-113.0); … … 80 80 public static final Symbol Dome = new Symbol(); 81 81 static { 82 Dome.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));82 Dome.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 83 83 Dome.add(new Instr(Prim.FILL, Color.black)); 84 84 Dome.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-36,-36,72,72))); … … 88 88 static { 89 89 Flagstaff.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 90 Flagstaff.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));90 Flagstaff.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 91 91 Flagstaff.add(new Instr(Prim.FILL, Color.black)); 92 92 Path2D.Double p = new Path2D.Double(); p.moveTo(0.0,-10.0); p.lineTo(0.0,-150.0); p.moveTo(0.0,-140.0); p.lineTo(40.0,-140.0); p.lineTo(40.0,-100.0); p.lineTo(0.0,-100.0); … … 96 96 static { 97 97 FlareStack.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 98 FlareStack.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));98 FlareStack.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 99 99 FlareStack.add(new Instr(Prim.FILL, Color.black)); 100 100 Path2D.Double p = new Path2D.Double(); p.moveTo(-7.8,-6.0); p.lineTo(-7.8,-100.0); p.lineTo(7.8,-100.0); p.lineTo(7.8,-6.0); 101 101 FlareStack.add(new Instr(Prim.PLIN, p)); 102 FlareStack.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));102 FlareStack.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND))); 103 103 p = new Path2D.Double(); p.moveTo(21.6,-169.6); p.curveTo(-22.0,-132.4,-27.4,-103.5,3.0,-100.0); p.curveTo(39.0,-118.0,-4.0,-141.0,21.6,-169.6); 104 104 FlareStack.add(new Instr(Prim.PLIN, p)); … … 107 107 static { 108 108 LandTower.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 109 LandTower.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));109 LandTower.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 110 110 LandTower.add(new Instr(Prim.FILL, Color.black)); 111 111 LandTower.add(new Instr(Prim.LINE, new Line2D.Double(-25,0,-15,-120))); … … 116 116 static { 117 117 Mast.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 118 Mast.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)));118 Mast.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL))); 119 119 Mast.add(new Instr(Prim.FILL, Color.black)); 120 120 Path2D.Double p = new Path2D.Double(); p.moveTo(-25.0,0.0); p.lineTo(0.0,-150.0); p.lineTo(25.0,0.0); … … 124 124 static { 125 125 Monument.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 126 Monument.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));126 Monument.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER))); 127 127 Monument.add(new Instr(Prim.FILL, Color.black)); 128 128 Monument.add(new Instr(Prim.LINE, new Line2D.Double(-25,0,-15,-105))); … … 132 132 public static final Symbol Platform = new Symbol(); 133 133 static { 134 Platform.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));134 Platform.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 135 135 Platform.add(new Instr(Prim.FILL, Color.black)); 136 136 Platform.add(new Instr(Prim.RECT, new Rectangle2D.Double(-48,-48,96,96))); … … 139 139 public static final Symbol RadioTV = new Symbol(); 140 140 static { 141 RadioTV.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_BEVEL)));141 RadioTV.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_ROUND, BasicStroke.JOIN_BEVEL))); 142 142 RadioTV.add(new Instr(Prim.FILL, Color.black)); 143 143 RadioTV.add(new Instr(Prim.EARC, new Arc2D.Double(-30.0,-180.0,60.0,60.0,45.0,-90.0,Arc2D.OPEN))); … … 148 148 public static final Symbol Spire = new Symbol(); 149 149 static { 150 Spire.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));150 Spire.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 151 151 Spire.add(new Instr(Prim.FILL, Color.black)); 152 152 Spire.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-25,-25,50,50))); … … 156 156 static { 157 157 Minaret.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Spire, 1.0, 0, 0, null, null))); 158 Minaret.add(new Instr(Prim.STRK, new BasicStroke(6 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));158 Minaret.add(new Instr(Prim.STRK, new BasicStroke(6, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 159 159 Minaret.add(new Instr(Prim.LINE, new Line2D.Double(0,-25,0,-50))); 160 Minaret.add(new Instr(Prim.STRK, new BasicStroke(6 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));160 Minaret.add(new Instr(Prim.STRK, new BasicStroke(6, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER))); 161 161 Minaret.add(new Instr(Prim.EARC, new Arc2D.Double(-40.0,-110.0,80.0,60.0,180.0,180.0,Arc2D.OPEN))); 162 162 } 163 163 public static final Symbol Temple = new Symbol(); 164 164 static { 165 Temple.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));165 Temple.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 166 166 Temple.add(new Instr(Prim.RECT, new Rectangle2D.Double(-25,-15,50,30))); 167 Temple.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));167 Temple.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 168 168 Temple.add(new Instr(Prim.LINE, new Line2D.Double(-35,-21,35,21))); 169 169 Temple.add(new Instr(Prim.LINE, new Line2D.Double(-35,21,35,-21))); … … 172 172 static { 173 173 WaterTower.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 174 WaterTower.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));174 WaterTower.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 175 175 WaterTower.add(new Instr(Prim.FILL, Color.black)); 176 176 WaterTower.add(new Instr(Prim.LINE, new Line2D.Double(-25,0,-15,-120))); … … 181 181 static { 182 182 WindMotor.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 183 WindMotor.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));183 WindMotor.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER))); 184 184 WindMotor.add(new Instr(Prim.FILL, Color.black)); 185 185 WindMotor.add(new Instr(Prim.LINE, new Line2D.Double(0,-10,0,-90))); … … 190 190 public static final Symbol Windmill = new Symbol(); 191 191 static { 192 Windmill.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));192 Windmill.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 193 193 Windmill.add(new Instr(Prim.FILL, Color.black)); 194 194 Windmill.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-12,-12,24,24))); … … 199 199 static { 200 200 Windsock.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Landmarks.Base, 1.0, 0, 0, null, null))); 201 Windsock.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));201 Windsock.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER))); 202 202 Windsock.add(new Instr(Prim.FILL, Color.black)); 203 203 Windsock.add(new Instr(Prim.LINE, new Line2D.Double(0,-10,0,-100))); 204 Windsock.add(new Instr(Prim.STRK, new BasicStroke(8 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));204 Windsock.add(new Instr(Prim.STRK, new BasicStroke(8, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER))); 205 205 Windsock.add(new Instr(Prim.LINE, new Line2D.Double(0,-100,0,-150))); 206 Windsock.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND)));206 Windsock.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND))); 207 207 Path2D.Double p = new Path2D.Double(); p.moveTo(0.0,-100.0); p.lineTo(10.0,-100.0); p.lineTo(10.0,-150.0); p.lineTo(0.0,-150.0); 208 208 p.moveTo(10.0,-150.0); p.lineTo(50.0,-145.0); p.lineTo(120.0,-70.0); p.quadTo(120.0,-55.0,105.0,-55.0); -
applications/editors/josm/plugins/smed2/src/symbols/Notices.java
r29186 r29198 51 51 private static final Symbol Sport = new Symbol(); 52 52 static { 53 Sport.add(new Instr(Prim.FONT, new Font("Arial", Font.BOLD, 15))); 54 Sport.add(new Instr(Prim.TEXT, new Caption("SPORT", (float)-25.0, (float)5.0))); 53 Sport.add(new Instr(Prim.TEXT, new Caption("SPORT", new TextStyle(new Font("Arial", Font.BOLD, 15)), (float)-25.0, (float)5.0))); 55 54 } 56 55 private static final Symbol Turn = new Symbol(); 57 56 static { 58 Turn.add(new Instr(Prim.STRK, new BasicStroke(5 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));57 Turn.add(new Instr(Prim.STRK, new BasicStroke(5, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 59 58 Turn.add(new Instr(Prim.FILL, Color.black)); 60 59 Turn.add(new Instr(Prim.EARC, new Arc2D.Double(-9.0,-9.0,18.0,18.0,270.0,230.0,Arc2D.OPEN))); … … 66 65 private static final Symbol VHF = new Symbol(); 67 66 static { 68 VHF.add(new Instr(Prim.FONT, new Font("Arial", Font.BOLD, 20))); 69 VHF.add(new Instr(Prim.TEXT, new Caption("VHF", (float)-20.0, (float)-5.0))); 67 VHF.add(new Instr(Prim.TEXT, new Caption("VHF", new TextStyle(new Font("Arial", Font.BOLD, 20)), (float)-20.0, (float)-5.0))); 70 68 } 71 69 private static final Symbol Waterbike = new Symbol(); … … 77 75 NoticeA.add(new Instr(Prim.FILL, Color.white)); 78 76 NoticeA.add(new Instr(Prim.RSHP, new Rectangle2D.Double(-21,-21,42,42))); 79 NoticeA.add(new Instr(Prim.STRK, new BasicStroke(8 .0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));77 NoticeA.add(new Instr(Prim.STRK, new BasicStroke(8, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER))); 80 78 NoticeA.add(new Instr(Prim.FILL, new Color(0xe80000))); 81 79 NoticeA.add(new Instr(Prim.LINE, new Line2D.Double(-25,-25,25,25))); 82 NoticeA.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));80 NoticeA.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 83 81 NoticeA.add(new Instr(Prim.FILL, Color.black)); 84 82 NoticeA.add(new Instr(Prim.RRCT, new RoundRectangle2D.Double(-30,-30,60,60,4,4))); … … 90 88 NoticeB.add(new Instr(Prim.FILL, Color.white)); 91 89 NoticeB.add(new Instr(Prim.RSHP, new Rectangle2D.Double(-21,-21,42,42))); 92 NoticeB.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));90 NoticeB.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 93 91 NoticeB.add(new Instr(Prim.FILL, Color.black)); 94 92 NoticeB.add(new Instr(Prim.RRCT, new RoundRectangle2D.Double(-30,-30,60,60,4,4))); … … 98 96 NoticeE.add(new Instr(Prim.FILL, new Color(0x0000a0))); 99 97 NoticeE.add(new Instr(Prim.RSHP, new RoundRectangle2D.Double(-30,-30,60,60,4,4))); 100 NoticeE.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));98 NoticeE.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 101 99 NoticeE.add(new Instr(Prim.FILL, Color.black)); 102 100 NoticeE.add(new Instr(Prim.RRCT, new RoundRectangle2D.Double(-30,-30,60,60,4,4))); … … 108 106 NoticeA1.add(new Instr(Prim.FILL, new Color(0xe80000))); 109 107 NoticeA1.add(new Instr(Prim.RSHP, new RoundRectangle2D.Double(-30,-30,60,60,4,4))); 110 NoticeA1.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));108 NoticeA1.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 111 109 NoticeA1.add(new Instr(Prim.FILL, Color.white)); 112 110 NoticeA1.add(new Instr(Prim.RSHP, new Rectangle2D.Double(-30,-10,60,20))); … … 118 116 NoticeA1a.add(new Instr(Prim.FILL, new Color(0xe80000))); 119 117 NoticeA1a.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-30,-30,60,60))); 120 NoticeA1a.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));118 NoticeA1a.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 121 119 NoticeA1a.add(new Instr(Prim.FILL, Color.white)); 122 120 NoticeA1a.add(new Instr(Prim.RSHP, new Rectangle2D.Double(-29,-10,58,20))); … … 185 183 static { 186 184 NoticeA9.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Notices.NoticeA, 1.0, 0, 0, null, null))); 187 NoticeA9.add(new Instr(Prim.STRK, new BasicStroke(7 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));185 NoticeA9.add(new Instr(Prim.STRK, new BasicStroke(7, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 188 186 NoticeA9.add(new Instr(Prim.FILL, Color.black)); 189 187 Path2D.Double p = new Path2D.Double(); p.moveTo(-23,10); p.curveTo(-11,10,-12,4,0,4); p.curveTo(12,4,11,10,23,10); … … 200 198 p = new Path2D.Double(); p.moveTo(0,-30); p.lineTo(-30,0); p.lineTo(0,30); p.closePath(); 201 199 NoticeA10a.add(new Instr(Prim.PGON, p)); 202 NoticeA10a.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));200 NoticeA10a.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 203 201 NoticeA10a.add(new Instr(Prim.FILL, Color.black)); 204 202 p = new Path2D.Double(); p.moveTo(0,-30); p.lineTo(-30,0); p.lineTo(0,30); p.lineTo(30,0); p.closePath(); -
applications/editors/josm/plugins/smed2/src/symbols/Symbols.java
r29186 r29198 24 24 25 25 public enum Prim { 26 BBOX, STRK, COLR, FILL, LINE, RECT, RRCT, ELPS, EARC, PLIN, PGON, RSHP, FONT,TEXT, SYMB, P1, P2, H2, H3, H4, H5, V2, D2, D3, D4, B2, S2, S3, S4, C2, X226 BBOX, STRK, COLR, FILL, LINE, RECT, RRCT, ELPS, EARC, PLIN, PGON, RSHP, TEXT, SYMB, P1, P2, H2, H3, H4, H5, V2, D2, D3, D4, B2, S2, S3, S4, C2, X2 27 27 } 28 28 … … 85 85 } 86 86 87 public static class TextStyle { 88 Font font; 89 90 public TextStyle(Font ifont) { 91 font = ifont; 92 } 93 } 94 87 95 public static class Caption { 88 String str;; 96 String str; 97 TextStyle style; 89 98 float x; 90 99 float y; 91 100 92 public Caption(String istr, float ix, float iy) { 101 public Caption(String istr, TextStyle istyle, float ix, float iy) { 93 102 str = istr; 103 style = istyle; 94 104 x = ix; 95 105 y = iy; … … 97 107 } 98 108 109 public static class LineStyle { 110 BasicStroke stroke; 111 Color line; 112 Color fill; 113 114 public LineStyle(BasicStroke istroke, Color iline, Color ifill) { 115 stroke = istroke; 116 line = iline; 117 fill = ifill; 118 } 119 } 120 99 121 public static class Symbol extends ArrayList<Instr> { 100 private static final long serialVersionUID = 1L;101 122 102 123 public Symbol() { … … 185 206 case COLR: 186 207 if ((cs != null) && (cs.col != null)) { 187 for (Instr patch : ( ArrayList<Instr>) item.params) {208 for (Instr patch : (Symbol) item.params) { 188 209 switch (patch.type) { 189 210 case P1: … … 271 292 drawSymbol(g2, s.instr, s.scale, s.x, s.y, s.delta, s.scheme); 272 293 break; 273 case FONT:274 g2.setFont((Font) item.params);275 break;276 294 case TEXT: 277 295 Caption c = (Caption) item.params; 296 g2.setFont(c.style.font); 278 297 g2.drawString(c.str, c.x, c.y); 279 298 break; -
applications/editors/josm/plugins/smed2/src/symbols/Topmarks.java
r29186 r29198 31 31 colours.add(new Instr(Prim.P1, p)); 32 32 TopBoard.add(new Instr(Prim.COLR, colours)); 33 TopBoard.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));33 TopBoard.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 34 34 TopBoard.add(new Instr(Prim.FILL, Color.black)); 35 35 p = new Path2D.Double(); p.moveTo(-19.0,-2.0); p.lineTo(-19.0,-39.0); p.lineTo(19.0,-39.0); p.lineTo(19.0,-2.0); p.closePath(); … … 43 43 colours.add(new Instr(Prim.P1, p)); 44 44 TopCan.add(new Instr(Prim.COLR, colours)); 45 TopCan.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));45 TopCan.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 46 46 TopCan.add(new Instr(Prim.FILL, Color.black)); 47 47 TopCan.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-15))); … … 56 56 colours.add(new Instr(Prim.P1, p)); 57 57 TopCone.add(new Instr(Prim.COLR, colours)); 58 TopCone.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));58 TopCone.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 59 59 TopCone.add(new Instr(Prim.FILL, Color.black)); 60 60 TopCone.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-15))); … … 70 70 colours.add(new Instr(Prim.P1, p)); 71 71 TopCross.add(new Instr(Prim.COLR, colours)); 72 TopCross.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));72 TopCross.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 73 73 TopCross.add(new Instr(Prim.FILL, Color.black)); 74 74 TopCross.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-15))); 75 TopCross.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));75 TopCross.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 76 76 p = new Path2D.Double(); p.moveTo(-5.0,-15.0); p.lineTo(-5.0,-32.5); p.lineTo(-22.5,-32.5); p.lineTo(-22.5,-42.5); p.lineTo(-5.0,-42.5); p.lineTo(-5.0,-60.0); 77 77 p.lineTo(5.0,-60.0); p.lineTo(5.0,-42.5); p.lineTo(22.5,-42.5); p.lineTo(22.5,-32.5); p.lineTo(5.0,-32.5); p.lineTo(5.0,-15.0); p.closePath(); … … 87 87 colours.add(new Instr(Prim.P2, p)); 88 88 TopEast.add(new Instr(Prim.COLR, colours)); 89 TopEast.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));89 TopEast.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 90 90 TopEast.add(new Instr(Prim.FILL, Color.black)); 91 91 TopEast.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-10))); 92 92 TopEast.add(new Instr(Prim.LINE, new Line2D.Double(0,-43,0,-47))); 93 TopEast.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));93 TopEast.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 94 94 p = new Path2D.Double(); p.moveTo(0.0,-10.0); p.lineTo(-15.0,-43.0); p.lineTo(15.0,-43.0); p.closePath(); 95 95 p.moveTo(0.0,-80.0); p.lineTo(-15.0,-47.0); p.lineTo(15.0,-47.0); p.closePath(); … … 105 105 colours.add(new Instr(Prim.P2, p)); 106 106 TopIsol.add(new Instr(Prim.COLR, colours)); 107 TopIsol.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));107 TopIsol.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 108 108 TopIsol.add(new Instr(Prim.FILL, Color.black)); 109 109 TopIsol.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-15))); 110 TopIsol.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));110 TopIsol.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 111 111 TopIsol.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-13,-41,26,26))); 112 112 TopIsol.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-13,-68,26,26))); … … 115 115 static { 116 116 TopMooring.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80))); 117 TopMooring.add(new Instr(Prim.STRK, new BasicStroke(3 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));117 TopMooring.add(new Instr(Prim.STRK, new BasicStroke(3, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 118 118 TopMooring.add(new Instr(Prim.FILL, Color.black)); 119 119 TopMooring.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-1.5,-6,3,3))); … … 129 129 colours.add(new Instr(Prim.P2, p)); 130 130 TopNorth.add(new Instr(Prim.COLR, colours)); 131 TopNorth.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));131 TopNorth.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 132 132 TopNorth.add(new Instr(Prim.FILL, Color.black)); 133 133 TopNorth.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-10))); 134 TopNorth.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));134 TopNorth.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 135 135 p = new Path2D.Double(); p.moveTo(-15.0,-10.0); p.lineTo(0.0,-43.0); p.lineTo(15.0,-10.0); p.closePath(); 136 136 p.moveTo(0.0,-78.0); p.lineTo(-15.0,-45.0); p.lineTo(15.0,-45.0); p.closePath(); … … 146 146 colours.add(new Instr(Prim.P2, p)); 147 147 TopSouth.add(new Instr(Prim.COLR, colours)); 148 TopSouth.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));148 TopSouth.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 149 149 TopSouth.add(new Instr(Prim.FILL, Color.black)); 150 150 TopSouth.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-10))); 151 TopSouth.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));151 TopSouth.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 152 152 p = new Path2D.Double(); p.moveTo(0.0,-10.0); p.lineTo(-15.0,-43.0); p.lineTo(15.0,-43.0); p.closePath(); 153 153 p.moveTo(-15.0,-78.0); p.lineTo(0.0,-45.0); p.lineTo(15.0,-78.0); p.closePath(); … … 161 161 colours.add(new Instr(Prim.P1, p)); 162 162 TopSphere.add(new Instr(Prim.COLR, colours)); 163 TopSphere.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));163 TopSphere.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 164 164 TopSphere.add(new Instr(Prim.FILL, Color.black)); 165 165 TopSphere.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-15))); 166 TopSphere.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));166 TopSphere.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 167 167 TopSphere.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-14,-42,28,28))); 168 168 } … … 174 174 colours.add(new Instr(Prim.P1, p)); 175 175 TopSquare.add(new Instr(Prim.COLR, colours)); 176 TopSquare.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));176 TopSquare.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 177 177 TopSquare.add(new Instr(Prim.FILL, Color.black)); 178 178 p = new Path2D.Double(); p.moveTo(-13.0,-1.0); p.lineTo(-13.0,-27.0); p.lineTo(13.0,-27.0); p.lineTo(13.0,-1.0); p.closePath(); … … 186 186 colours.add(new Instr(Prim.P1, p)); 187 187 TopTriangle.add(new Instr(Prim.COLR, colours)); 188 TopTriangle.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));188 TopTriangle.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 189 189 TopTriangle.add(new Instr(Prim.FILL, Color.black)); 190 190 p = new Path2D.Double(); p.moveTo(-15.0,-1.0); p.lineTo(0.0,-29.0); p.lineTo(15.0,-1.0); p.closePath(); … … 200 200 colours.add(new Instr(Prim.P2, p)); 201 201 TopWest.add(new Instr(Prim.COLR, colours)); 202 TopWest.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));202 TopWest.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 203 203 TopWest.add(new Instr(Prim.FILL, Color.black)); 204 204 TopWest.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-10))); 205 TopWest.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));205 TopWest.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 206 206 p = new Path2D.Double(); p.moveTo(-15.0,-10.0); p.lineTo(0.0,-43.0); p.lineTo(15.0,-10.0); p.closePath(); 207 207 p.moveTo(-15.0,-78.0); p.lineTo(0.0,-45.0); p.lineTo(15.0,-78.0); p.closePath(); … … 216 216 colours.add(new Instr(Prim.P1, p)); 217 217 TopX.add(new Instr(Prim.COLR, colours)); 218 TopX.add(new Instr(Prim.STRK, new BasicStroke(4 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));218 TopX.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 219 219 TopX.add(new Instr(Prim.FILL, Color.black)); 220 220 TopX.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-27))); 221 TopX.add(new Instr(Prim.STRK, new BasicStroke(2 .0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));221 TopX.add(new Instr(Prim.STRK, new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER))); 222 222 p = new Path2D.Double(); p.moveTo(0.0,-27.7); p.lineTo(-12.4,-15.7); p.lineTo(-19.3,-22.6); p.lineTo(-7.3,-35.0); p.lineTo(-19.3,-47.3); p.lineTo(-12.4,-54.2); p.lineTo(0.0,-42.4); 223 223 p.lineTo(12.4,-54.2); p.lineTo(19.3,-47.3); p.lineTo(7.3,-35.0); p.lineTo(19.3,-22.6); p.lineTo(12.4,-15.7); p.closePath();
Note:
See TracChangeset
for help on using the changeset viewer.