Changeset 30026 in osm for applications/editors/josm/plugins/smed2/src/seamap/Signals.java
- Timestamp:
- 2013-10-18T12:28:00+02:00 (12 years ago)
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/smed2/src/seamap/Signals.java
r30025 r30026 10 10 package seamap; 11 11 12 import java.awt.Color; 13 import java.awt.Font; 12 14 import java.awt.geom.*; 13 15 import java.util.ArrayList; 16 17 import s57.S57att.Att; 18 import s57.S57obj.Obj; 19 import s57.S57val.CatROS; 20 import seamap.Renderer.LabelStyle; 14 21 import seamap.SeaMap.*; 15 16 public class Lights { 17 22 import symbols.Beacons; 23 import symbols.Topmarks; 24 import symbols.Symbols.Delta; 25 import symbols.Symbols.Handle; 26 27 public class Signals { 28 29 public static void addSignals(Feature feature) { 30 if (feature.objs.containsKey(Obj.FOGSIG)) Signals.fogSignals(feature); 31 if (feature.objs.containsKey(Obj.RTPBCN)) Signals.radarStations(feature); 32 if (feature.objs.containsKey(Obj.RADSTA)) Signals.radarStations(feature); 33 if (feature.objs.containsKey(Obj.RDOSTA)) Signals.radioStations(feature); 34 if (feature.objs.containsKey(Obj.LIGHTS)) Signals.lights(feature); 35 } 36 37 public static void fogSignals(Feature feature) { 38 39 } 40 41 public static void radarStations(Feature feature) { 42 Renderer.symbol(feature, Beacons.RadarStation, null, null, null); 43 ArrayList<CatROS> cats = (ArrayList<CatROS>)Renderer.getAttVal(feature, Obj.RDOSTA, 0, Att.CATROS); 44 String str = ""; 45 for (CatROS ros : cats) { 46 switch (ros) { 47 case ROS_OMNI: 48 str += " RC"; 49 break; 50 case ROS_DIRL: 51 str += " RD"; 52 break; 53 case ROS_ROTP: 54 str += " RW"; 55 break; 56 case ROS_CNSL: 57 str += " Consol"; 58 break; 59 case ROS_RDF: 60 str += " RG"; 61 break; 62 case ROS_QTA: 63 str += " R"; 64 break; 65 case ROS_AERO: 66 str += " AeroRC"; 67 break; 68 case ROS_DECA: 69 str += " Decca"; 70 break; 71 case ROS_LORN: 72 str += " Loran"; 73 break; 74 case ROS_DGPS: 75 str += " DGPS"; 76 break; 77 case ROS_TORN: 78 str += " Toran"; 79 break; 80 case ROS_OMGA: 81 str += " Omega"; 82 break; 83 case ROS_SYLD: 84 str += " Syledis"; 85 break; 86 case ROS_CHKA: 87 str += " Chiaka"; 88 break; 89 case ROS_PCOM: 90 case ROS_COMB: 91 case ROS_FACS: 92 case ROS_TIME: 93 break; 94 case ROS_PAIS: 95 case ROS_SAIS: 96 str += " AIS"; 97 break; 98 case ROS_VAIS: 99 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 100 break; 101 case ROS_VANC: 102 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 103 Renderer.symbol(feature, Topmarks.TopNorth, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 104 break; 105 case ROS_VASC: 106 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 107 Renderer.symbol(feature, Topmarks.TopSouth, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 108 break; 109 case ROS_VAEC: 110 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 111 Renderer.symbol(feature, Topmarks.TopEast, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 112 break; 113 case ROS_VAWC: 114 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 115 Renderer.symbol(feature, Topmarks.TopWest, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 116 break; 117 case ROS_VAPL: 118 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 119 Renderer.symbol(feature, Topmarks.TopCan, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 120 break; 121 case ROS_VASL: 122 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 123 Renderer.symbol(feature, Topmarks.TopCone, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 124 break; 125 case ROS_VAID: 126 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 127 Renderer.symbol(feature, Topmarks.TopIsol, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 128 break; 129 case ROS_VASW: 130 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 131 Renderer.symbol(feature, Topmarks.TopSphere, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 132 break; 133 case ROS_VASP: 134 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 135 Renderer.symbol(feature, Topmarks.TopX, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 136 break; 137 case ROS_VAWK: 138 Renderer.labelText(feature, " V-AIS", new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 70))); 139 Renderer.symbol(feature, Topmarks.TopCross, null, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, -25)), null); 140 break; 141 } 142 } 143 if (!str.isEmpty()) Renderer.labelText(feature, str, new Font("Arial", Font.PLAIN, 40), LabelStyle.NONE, Color.black, null, new Delta(Handle.BR, AffineTransform.getTranslateInstance(-30, -70))); 144 } 145 146 public static void radioStations(Feature feature) { 147 148 } 149 150 public static void lights(Feature feature) { 151 152 } 153 18 154 private static Point2D.Double radial(Snode centre, double radius, double angle) { 19 155 Point2D origin = Renderer.context.getPoint(centre);
Note:
See TracChangeset
for help on using the changeset viewer.
