Ignore:
Timestamp:
2013-01-10T17:31:17+01:00 (13 years ago)
Author:
malcolmh
Message:

save

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/smed2/src/symbols/Topmarks.java

    r29185 r29186  
    1717import java.awt.geom.Line2D;
    1818import java.awt.geom.Path2D;
    19 import java.util.ArrayList;
    2019import java.util.EnumMap;
    2120
     
    2524public class Topmarks {
    2625       
    27         public static final ArrayList<Instr> FogSignal = new ArrayList<Instr>();
    28         public static final ArrayList<Instr> LightFlare = new ArrayList<Instr>();
    29         public static final ArrayList<Instr> Radar = new ArrayList<Instr>();
    30         public static final ArrayList<Instr> TopBoard = new ArrayList<Instr>();
     26        public static final Symbol TopBoard = new Symbol();
    3127        static {
    3228                TopBoard.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
    33                 ArrayList<Instr> colours = new ArrayList<Instr>();
     29                Symbol colours = new Symbol();
    3430                Path2D.Double 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();
    3531                colours.add(new Instr(Prim.P1, p));
     
    4036                TopBoard.add(new Instr(Prim.PLIN, p));
    4137        }
    42         public static final ArrayList<Instr> TopCan = new ArrayList<Instr>();
     38        public static final Symbol TopCan = new Symbol();
    4339        static {
    4440                TopCan.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
    45                 ArrayList<Instr> colours = new ArrayList<Instr>();
     41                Symbol colours = new Symbol();
    4642                Path2D.Double p = new Path2D.Double(); p.moveTo(-12.0,-15.0); p.lineTo(-12.0,-48.0); p.lineTo(12.0,-48.0); p.lineTo(12.0,-15.0); p.closePath();
    4743                colours.add(new Instr(Prim.P1, p));
     
    5349                TopCan.add(new Instr(Prim.PLIN, p));
    5450        }
    55         public static final ArrayList<Instr> TopCone = new ArrayList<Instr>();
     51        public static final Symbol TopCone = new Symbol();
    5652        static {
    5753                TopCone.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
    58                 ArrayList<Instr> colours = new ArrayList<Instr>();
     54                Symbol colours = new Symbol();
    5955                Path2D.Double p = new Path2D.Double(); p.moveTo(-15.0,-15.0); p.lineTo(0.0,-45.0); p.lineTo(15.0,-15.0); p.closePath();
    6056                colours.add(new Instr(Prim.P1, p));
     
    6662                TopCone.add(new Instr(Prim.PLIN, p));
    6763        }
    68         public static final ArrayList<Instr> TopCross = new ArrayList<Instr>();
     64        public static final Symbol TopCross = new Symbol();
    6965        static {
    7066                TopCross.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
    71                 ArrayList<Instr> colours = new ArrayList<Instr>();
     67                Symbol colours = new Symbol();
    7268                Path2D.Double 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);
    7369                p.lineTo(-5.0,-60.0); 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();
     
    8278                TopCross.add(new Instr(Prim.PLIN, p));
    8379        }
    84         public static final ArrayList<Instr> TopEast = new ArrayList<Instr>();
     80        public static final Symbol TopEast = new Symbol();
    8581        static {
    8682                TopEast.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
    87                 ArrayList<Instr> colours = new ArrayList<Instr>();
     83                Symbol colours = new Symbol();
    8884                Path2D.Double p = new Path2D.Double(); p.moveTo(0.0,-80.0); p.lineTo(-15.0,-47.0); p.lineTo(15.0,-47.0); p.closePath();
    8985                colours.add(new Instr(Prim.P1, p));
     
    10096                TopEast.add(new Instr(Prim.PLIN, p));
    10197        }
    102         public static final ArrayList<Instr> TopIsol = new ArrayList<Instr>();
     98        public static final Symbol TopIsol = new Symbol();
    10399        static {
    104100                TopIsol.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
    105                 ArrayList<Instr> colours = new ArrayList<Instr>();
     101                Symbol colours = new Symbol();
    106102                Path2D.Double p = new Path2D.Double(); p.moveTo(-13.0,-55.0); p.curveTo(-13.0, -72.3, 13.0, -72.3, 13.0,-55.0); p.curveTo(13.0, -37.7, -13.0, -37.7, -13.0,-55.0); p.closePath();
    107103                colours.add(new Instr(Prim.P1, p));
     
    116112                TopIsol.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-13,-68,26,26)));
    117113        }
    118         public static final ArrayList<Instr> TopMooring = new ArrayList<Instr>();
     114        public static final Symbol TopMooring = new Symbol();
    119115        static {
    120116                TopMooring.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     
    124120                TopMooring.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-8.5,-25,17,17)));
    125121        }
    126         public static final ArrayList<Instr> TopNorth = new ArrayList<Instr>();
     122        public static final Symbol TopNorth = new Symbol();
    127123        static {
    128124                TopNorth.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
    129                 ArrayList<Instr> colours = new ArrayList<Instr>();
     125                Symbol colours = new Symbol();
    130126                Path2D.Double p = new Path2D.Double(); p.moveTo(0.0,-78.0); p.lineTo(-15.0,-45.0); p.lineTo(15.0,-45.0); p.closePath();
    131127                colours.add(new Instr(Prim.P1, p));
     
    141137                TopNorth.add(new Instr(Prim.PLIN, p));
    142138        }
    143         public static final ArrayList<Instr> TopSouth = new ArrayList<Instr>();
     139        public static final Symbol TopSouth = new Symbol();
    144140        static {
    145141                TopSouth.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
    146                 ArrayList<Instr> colours = new ArrayList<Instr>();
     142                Symbol colours = new Symbol();
    147143                Path2D.Double p = new Path2D.Double(); p.moveTo(-15.0,-78.0); p.lineTo(0.0,-45.0);  p.lineTo(15.0,-78.0); p.closePath();
    148144                colours.add(new Instr(Prim.P1, p));
     
    158154                TopSouth.add(new Instr(Prim.PLIN, p));
    159155        }
    160         public static final ArrayList<Instr> TopSphere = new ArrayList<Instr>();
     156        public static final Symbol TopSphere = new Symbol();
    161157        static {
    162158                TopSphere.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
    163                 ArrayList<Instr> colours = new ArrayList<Instr>();
     159                Symbol colours = new Symbol();
    164160                Path2D.Double p = new Path2D.Double(); p.moveTo(-14.0,-28.0); p.curveTo(-14.0,-46.7,14.0,-46.7,14.0,-28.0); p.curveTo(14.0,-9.3,-14.0,-9.3,-14.0,-28.0); p.closePath();
    165161                colours.add(new Instr(Prim.P1, p));
     
    171167                TopSphere.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-14,-42,28,28)));
    172168        }
    173         public static final ArrayList<Instr> TopSquare = new ArrayList<Instr>();
     169        public static final Symbol TopSquare = new Symbol();
    174170        static {
    175171                TopSquare.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
    176                 ArrayList<Instr> colours = new ArrayList<Instr>();
     172                Symbol colours = new Symbol();
    177173                Path2D.Double 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();
    178174                colours.add(new Instr(Prim.P1, p));
     
    183179                TopSquare.add(new Instr(Prim.PLIN, p));
    184180        }
    185         public static final ArrayList<Instr> TopTriangle = new ArrayList<Instr>();
     181        public static final Symbol TopTriangle = new Symbol();
    186182        static {
    187183                TopTriangle.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
    188                 ArrayList<Instr> colours = new ArrayList<Instr>();
     184                Symbol colours = new Symbol();
    189185                Path2D.Double p = new Path2D.Double(); p.moveTo(-15.0,-1.0); p.lineTo(0.0,-29.0); p.lineTo(15.0,-1.0); p.closePath();
    190186                colours.add(new Instr(Prim.P1, p));
     
    195191                TopTriangle.add(new Instr(Prim.PLIN, p));
    196192        }
    197         public static final ArrayList<Instr> TopWest = new ArrayList<Instr>();
     193        public static final Symbol TopWest = new Symbol();
    198194        static {
    199195                TopWest.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
    200                 ArrayList<Instr> colours = new ArrayList<Instr>();
     196                Symbol colours = new Symbol();
    201197                Path2D.Double p = new Path2D.Double(); p.moveTo(-15.0,-78.0); p.lineTo(0.0,-45.0);  p.lineTo(15.0,-78.0); p.closePath();
    202198                colours.add(new Instr(Prim.P1, p));
     
    212208                TopWest.add(new Instr(Prim.PLIN, p));
    213209        }
    214         public static final ArrayList<Instr> TopX = new ArrayList<Instr>();
     210        public static final Symbol TopX = new Symbol();
    215211        static {
    216212                TopX.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
    217                 ArrayList<Instr> colours = new ArrayList<Instr>();
     213                Symbol colours = new Symbol();
    218214                Path2D.Double 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);
    219215                p.lineTo(-12.4,-54.2); p.lineTo(0.0,-42.4); 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();
     
    229225        }
    230226       
     227        public static final EnumMap<TopSHP, Symbol> Shapes = new EnumMap<TopSHP, Symbol>(TopSHP.class);
     228        static {
     229                Shapes.put(TopSHP.TOP_BORD, TopBoard); Shapes.put(TopSHP.TOP_CAN, TopCan); Shapes.put(TopSHP.TOP_CONE, TopCone); Shapes.put(TopSHP.TOP_CROS, TopCross);
     230                 Shapes.put(TopSHP.TOP_EAST, TopEast); Shapes.put(TopSHP.TOP_ISD, TopIsol); Shapes.put(TopSHP.TOP_NORTH, TopNorth); Shapes.put(TopSHP.TOP_SOUTH, TopSouth);
     231                 Shapes.put(TopSHP.TOP_SPHR, TopSphere); Shapes.put(TopSHP.TOP_SQUR, TopSquare); Shapes.put(TopSHP.TOP_TRI, TopTriangle); Shapes.put(TopSHP.TOP_WEST, TopWest);
     232                 Shapes.put(TopSHP.TOP_SALT, TopX);
     233        }
    231234        public static final EnumMap<BoySHP, Delta> Buoys = new EnumMap<BoySHP, Delta>(BoySHP.class);
    232235        static {
     
    240243                Buoys.put(BoySHP.BOY_ICE, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0.0, -25.0)));
    241244        }
    242         public static final Delta Floats = new Delta(Handle.BC, AffineTransform.getTranslateInstance(0.0, -70.0));
     245        public static final Delta Floats = new Delta(Handle.BC, AffineTransform.getTranslateInstance(0.0, -42.0));
     246        public static final Delta Beacons = new Delta(Handle.BC, AffineTransform.getTranslateInstance(0.0, -70.0));
    243247
    244248}
Note: See TracChangeset for help on using the changeset viewer.