Changeset 29120 in osm for applications/editors/josm


Ignore:
Timestamp:
2012-12-26T14:12:40+01:00 (12 years ago)
Author:
malcolmh
Message:

save

Location:
applications/editors/josm/plugins/smed2/src/symbols
Files:
6 edited

Legend:

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

    r29109 r29120  
    6060        static {
    6161                Path2D.Double p = new Path2D.Double(); p.setWindingRule(GeneralPath.WIND_NON_ZERO);
    62                 p.moveTo(0.0,-7.0); p.curveTo(-9.3,-7.0,-9.3,7.0,0.0,7.0); p.curveTo(9.3,7.0,9.3,-7.0,0.0,-7.0);
     62                p.moveTo(0.0,-7.0); p.curveTo(-9.3,-6.5,-9.3,6.5,0.0,7.0); p.curveTo(9.3,6.5,9.3,-6.5,0.0,-7.0); p.closePath();
    6363                p.moveTo(0.0,-35.5); p.lineTo(8.0,-11.2); p.lineTo(33.5,-11.2); p.lineTo(12.8,4.0);
    6464                p.lineTo(20.5,28.5); p.lineTo(0.0,13.0); p.lineTo(-20.5,28.5); p.lineTo(-12.8,4.0); p.lineTo(-33.5,-11.2); p.lineTo(-8.0,-11.2); p.closePath();
  • applications/editors/josm/plugins/smed2/src/symbols/Facilities.java

    r29109 r29120  
    1010package symbols;
    1111
     12import java.awt.BasicStroke;
     13import java.awt.Color;
     14import java.awt.geom.Arc2D;
     15import java.awt.geom.Ellipse2D;
     16import java.awt.geom.GeneralPath;
     17import java.awt.geom.Line2D;
     18import java.awt.geom.Path2D;
     19import java.awt.geom.Rectangle2D;
     20import java.awt.geom.RoundRectangle2D;
    1221import java.util.ArrayList;
    1322
    1423import symbols.Symbols.Instr;
     24import symbols.Symbols.Prim;
    1525
    1626public class Facilities {
     27        private static final ArrayList<Instr> Facility = new ArrayList<Instr>();
     28        static {
     29                Facility.add(new Instr(Prim.STRK, new BasicStroke(2.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     30                Facility.add(new Instr(Prim.FILL, new Color(0x80ffffff, true)));
     31                RoundRectangle2D.Double s = new RoundRectangle2D.Double(-29,-29,58,58,15,15);
     32                Facility.add(new Instr(Prim.RSHP, s));
     33                Facility.add(new Instr(Prim.FILL, new Color(0xa30075)));
     34                Facility.add(new Instr(Prim.RRCT, s));
     35        }
    1736        public static final ArrayList<Instr> Boatlift = new ArrayList<Instr>();//was Crane
     37        static {
     38                Boatlift.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     39                Boatlift.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND)));
     40                Boatlift.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-3.7,-19.7,12,12)));
     41                Boatlift.add(new Instr(Prim.LINE, new Line2D.Double(2.3,-7.7,2.3,-2.0)));
     42                Boatlift.add(new Instr(Prim.EARC, new Arc2D.Double(-10.0,-1.5,20,20,75.0,-260.0,Arc2D.OPEN)));
     43        }
    1844        public static final ArrayList<Instr> Boatyard = new ArrayList<Instr>();
     45        static {
     46                Boatyard.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     47                Boatyard.add(new Instr(Prim.STRK, new BasicStroke(8.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));
     48                Boatyard.add(new Instr(Prim.LINE, new Line2D.Double(19,19,-8,-8)));
     49                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);
     50                p.curveTo(1.0,-11.5,-11.5,1.0,-21.5,-7.4); p.lineTo(-25.4,-11.3); p.lineTo(-21.9,-14.8); p.lineTo(-17.5,-10.5); p.closePath();
     51                Boatyard.add(new Instr(Prim.PGON, p));
     52        }
    1953        public static final ArrayList<Instr> Chandler = new ArrayList<Instr>();
     54        static {
     55                Chandler.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     56                Chandler.add(new Instr(Prim.STRK, new BasicStroke(5.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     57                Chandler.add(new Instr(Prim.ELPS, new Ellipse2D.Double(14,7,10,10)));
     58                Chandler.add(new Instr(Prim.LINE, new Line2D.Double(-23.0,12.0,14.0,12.0)));
     59                Chandler.add(new Instr(Prim.LINE, new Line2D.Double(8.0,21.0,8.0,-8.6)));
     60                Chandler.add(new Instr(Prim.LINE, new Line2D.Double(-16.0,21.0,-16.0,-8.6)));
     61                Chandler.add(new Instr(Prim.EARC, new Arc2D.Double(-16.0,-20.5,24,24,0.0,180.0,Arc2D.OPEN)));
     62        }
    2063        public static final ArrayList<Instr> Fuel = new ArrayList<Instr>();
     64        static {
     65                Fuel.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     66                Fuel.add(new Instr(Prim.STRK, new BasicStroke(2.5f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     67                Fuel.add(new Instr(Prim.FILL, new Color(0xa30075)));
     68                Path2D.Double p = new Path2D.Double(); p.setWindingRule(GeneralPath.WIND_EVEN_ODD);
     69                p.moveTo(-15.6,22.1); p.lineTo(-15.6,-19.4); p.quadTo(-15.5,-22.7,-12.2,-22.8); p.lineTo(0.2,-22.8); p.quadTo(3.3,-22.7,3.4,-19.4); p.lineTo(3.4,22.1); p.closePath();
     70                p.moveTo(-12.8,-19.0); p.quadTo(-12.7,-19.9,-11.8,-20.0); p.lineTo(-0.4,-20.0); p.quadTo(0.5,-19.9,0.6,-19.0); p.lineTo(0.6,-9.4);
     71                p.quadTo(0.5,-8.5,-0.4,-8.4); p.lineTo(-11.8,-8.4); p.quadTo(-12.7,-8.3,-12.8,-9.4); p.closePath();
     72                Fuel.add(new Instr(Prim.PGON, p));
     73                p = new Path2D.Double(); p.moveTo(3.0,-3.0); p.lineTo(7.0,-3.0); p.quadTo(9.4,-2.8,9.6,-0.4); p.lineTo(9.6,18.0); p.curveTo(10.1,23.2,18.4,21.5,17.4,17.2);
     74                p.lineTo(14.9,3.5); p.lineTo(15.1,-10.3); p.quadTo(14.9,-11.9,13.9,-13.1); p.lineTo(7.4,-19.6); p.moveTo(15.1,-7.4); p.lineTo(12.6,-7.4); p.quadTo(11.1,-7.4,11.1,-8.9); p.lineTo(11.1,-16.0);
     75                Fuel.add(new Instr(Prim.PLIN, p));
     76        }
    2177        public static final ArrayList<Instr> Laundrette = new ArrayList<Instr>();
     78        static {
     79                Laundrette.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     80                Laundrette.add(new Instr(Prim.STRK, new BasicStroke(1.5f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     81                Laundrette.add(new Instr(Prim.FILL, new Color(0xa30075)));
     82                Laundrette.add(new Instr(Prim.RECT, new Rectangle2D.Double(-15,-15,30,30)));
     83                Laundrette.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20)));
     84                Path2D.Double p = new Path2D.Double(); p.moveTo(-15,-15); p.lineTo(-15,-20); p.lineTo(15,-20); p.lineTo(15,-15);
     85                p.moveTo(-10,15); p.lineTo(-10,20); p.lineTo(10,20); p.lineTo(10,15);
     86                Laundrette.add(new Instr(Prim.PLIN, p));
     87        }
    2288        public static final ArrayList<Instr> PumpOut = new ArrayList<Instr>();
     89        static {
     90                PumpOut.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     91                PumpOut.add(new Instr(Prim.STRK, new BasicStroke(2.5f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));
     92                PumpOut.add(new Instr(Prim.FILL, new Color(0xa30075)));
     93                Path2D.Double p = new Path2D.Double(); p.moveTo(3.9,-3.7); p.lineTo(-7.4,-3.7); p.lineTo(-12.0,2.0); p.lineTo(-22.7,2.0);
     94                p.lineTo(-11.8,14.9); p.lineTo(15.1,14.9); p.lineTo(21.9,10.2); p.lineTo(21.9,3.1); p.lineTo(13.5,3.1);
     95                PumpOut.add(new Instr(Prim.PLIN, p));
     96                PumpOut.add(new Instr(Prim.STRK, new BasicStroke(3.5f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND)));
     97                p = new Path2D.Double(); p.moveTo(-2.5,3.0); p.lineTo(-2.5,-13.8); p.lineTo(6.9,-13.8); p.lineTo(6.9,-6.7); p.lineTo(14.5,-6.7);
     98                PumpOut.add(new Instr(Prim.PLIN, p));
     99                p = new Path2D.Double(); p.moveTo(9.7,2.3); p.lineTo(9.7,10.3); p.lineTo(-4.1,10.3); p.lineTo(-4.1,2.3); p.closePath();
     100                PumpOut.add(new Instr(Prim.PGON, p));
     101                p = new Path2D.Double(); p.moveTo(14.1,-10.6); p.lineTo(23.1,-6.7); p.lineTo(14.1,-2.8); p.closePath();
     102                PumpOut.add(new Instr(Prim.PGON, p));
     103        }
    23104        public static final ArrayList<Instr> SailingClub = new ArrayList<Instr>();
     105        static {
     106                SailingClub.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     107                SailingClub.add(new Instr(Prim.STRK, new BasicStroke(2.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     108                SailingClub.add(new Instr(Prim.FILL, new Color(0xa30075)));
     109                SailingClub.add(new Instr(Prim.LINE, new Line2D.Double(-5,20,-5,-20)));
     110                Path2D.Double p = new Path2D.Double(); p.moveTo(-5,0); p.lineTo(20,-10); p.lineTo(-5,-20); p.closePath();
     111                SailingClub.add(new Instr(Prim.PGON, p));
     112        }
    24113        public static final ArrayList<Instr> Shower = new ArrayList<Instr>();
     114        static {
     115                Shower.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     116                Shower.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     117                Shower.add(new Instr(Prim.FILL, new Color(0xa30075)));
     118                Shower.add(new Instr(Prim.LINE, new Line2D.Double(-4.8,-24.5,6.2,-13.5)));
     119                Shower.add(new Instr(Prim.STRK, new BasicStroke(2.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     120                Shower.add(new Instr(Prim.LINE, new Line2D.Double(-18.1,-17.9,-6.1,-21.3)));
     121                Shower.add(new Instr(Prim.LINE, new Line2D.Double(-13.9,-10.2,-3.9,-17.7)));
     122                Shower.add(new Instr(Prim.LINE, new Line2D.Double(-7.8,-4.4,-0.5,-14.3)));
     123                Shower.add(new Instr(Prim.LINE, new Line2D.Double(-0.2,-0.2,3.1,-12.1)));
     124                Path2D.Double p = new Path2D.Double(); p.moveTo(11.1,24.6); p.lineTo(11.1,-16.0); p.curveTo(11.1,-22.7,3.4,-23.6,0.8,-19.3);
     125                Shower.add(new Instr(Prim.PLIN, p));
     126        }
    25127        public static final ArrayList<Instr> Slipway = new ArrayList<Instr>();
     128        static {
     129                Slipway.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     130                Slipway.add(new Instr(Prim.STRK, new BasicStroke(3.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     131                Slipway.add(new Instr(Prim.FILL, new Color(0xa30075)));
     132                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);
     133                p.curveTo(-8.8,18.0,-9.8,16.7,-6.2,16.7); p.curveTo(-2.6,16.7,-3.6,18.0,0.0,18.0); p.curveTo(3.6,18.0,2.6,16.7,6.2,16.7); p.curveTo(9.8,16.7,8.8,18.0,12.4,18.0);
     134                p.curveTo(16.0,18.0,15.0,16.7,18.6,16.7); p.curveTo(22.2,16.7,21.2,18.0,24.8,18.0);     p.lineTo(24.8,13.6); p.closePath();
     135                Slipway.add(new Instr(Prim.PGON, p));
     136                Slipway.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-1.65,-1.9,8,8)));
     137                Slipway.add(new Instr(Prim.STRK, new BasicStroke(2.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     138                Slipway.add(new Instr(Prim.LINE, new Line2D.Double(-24.5,-8.3,-3.1,-2.4)));
     139                Slipway.add(new Instr(Prim.LINE, new Line2D.Double(9.3,1.1,22.2,4.6)));
     140                p = new Path2D.Double(); p.moveTo(22.9,0.6); p.lineTo(25.0,-7.4); p.lineTo(-5.1,-15.8); p.lineTo(0.3,-19.6); p.lineTo(-1.6,-20.1); p.lineTo(-7.2,-16.2);
     141                p.lineTo(-17.1,-18.9); p.quadTo(-16.8,-11.4,-7.7,-7.7); p.closePath();
     142                Slipway.add(new Instr(Prim.PGON, p));
     143        }
    26144        public static final ArrayList<Instr> Toilet = new ArrayList<Instr>();
     145        static {
     146                Toilet.add(new Instr(Prim.SYMB, new Symbols.Symbol(Facilities.Facility, 1.0, 0, 0, null, null)));
     147                Toilet.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     148                Toilet.add(new Instr(Prim.FILL, new Color(0xa30075)));
     149                Toilet.add(new Instr(Prim.LINE, new Line2D.Double(0,20,0,-20)));
     150                Toilet.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-18.5,-22.5,7.4,7.4)));
     151                Toilet.add(new Instr(Prim.RSHP, new Ellipse2D.Double(11,-22.5,7.4,7.4)));
     152                Path2D.Double p = new Path2D.Double(); p.moveTo(-9.8,-12.2); p.lineTo(-4.8,2.7); p.lineTo(-7.3,3.9); p.lineTo(-10.6,-7.0); p.lineTo(-11.7,-6.4); p.lineTo(-7.6,9.0);
     153                p.lineTo(-11.3,9.0); p.lineTo(-11.6,22.1); p.lineTo(-13.9,22.1); p.lineTo(-14.2,9.0); p.lineTo(-15.8,9.0); p.lineTo(-16.2,22.1); p.lineTo(-18.4,22.1);
     154                p.lineTo(-18.8,9.0); p.lineTo(-22.3,9.0); p.lineTo(-18.2,-6.4); p.lineTo(-19.1,-7.0); p.lineTo(-22.9,3.9); p.lineTo(-25.1,2.7); p.lineTo(-19.9,-12.2); p.closePath();
     155                Toilet.add(new Instr(Prim.PGON, p));
     156                p = new Path2D.Double(); p.moveTo(19.2,-12.2); p.lineTo(22.3,-10.1); p.lineTo(22.3,4.4); p.lineTo(20.2,4.4); p.lineTo(20.2,-7.3); p.lineTo(18.3,-7.3); p.lineTo(18.3,22.1);
     157                p.lineTo(15.8,22.1); p.lineTo(15.8,4.6); p.lineTo(13.8,4.6); p.lineTo(13.4,22.1); p.lineTo(11.0,22.1); p.lineTo(11.0,-7.3); p.lineTo(9.5,-7.3); p.lineTo(9.5,4.4); p.lineTo(6.8,4.4);
     158                p.lineTo(6.8,-10.1); p.lineTo(9.4,-12.2); p.closePath();
     159                Toilet.add(new Instr(Prim.PGON, p));
     160        }
    27161        public static final ArrayList<Instr> VisitorBerth = new ArrayList<Instr>();
     162        static {
     163                VisitorBerth.add(new Instr(Prim.FILL, new Color(0xa30075)));
     164                VisitorBerth.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-25,-25,50,50)));
     165                VisitorBerth.add(new Instr(Prim.FILL, Color.white));
     166                Path2D.Double p = new Path2D.Double(); p.moveTo(7.9,-13.6); p.lineTo(14.0,-13.6); p.lineTo(3.4,13.6); p.lineTo(-3.4,13.6);
     167                p.lineTo(-14.0,-13.6); p.lineTo(-7.9,-13.6); p.lineTo(0.0,8.7); p.closePath();
     168                VisitorBerth.add(new Instr(Prim.PGON, p));
     169        }
    28170        public static final ArrayList<Instr> VisitorMooring = new ArrayList<Instr>();
     171        static {
     172                VisitorMooring.add(new Instr(Prim.FILL, new Color(0xa30075)));
     173                Path2D.Double p = new Path2D.Double(); p.moveTo(-25.0,0); p.curveTo(-32.0,-21.0,-14.0,-45.5,12.7,-37.9); p.curveTo(27.5,-33.8,37.8,-15.5,32.0,0.0);
     174                p.lineTo(8.0,0.0); p.curveTo(8.0,-11.0,-8.0,-11.0,-8.0,0.0); p.closePath();
     175                VisitorMooring.add(new Instr(Prim.PGON, p));
     176    VisitorMooring.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     177    VisitorMooring.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20)));
     178    VisitorMooring.add(new Instr(Prim.LINE, new Line2D.Double(-33,0,-10,0)));
     179    VisitorMooring.add(new Instr(Prim.LINE, new Line2D.Double(10,0,40,0)));
     180    VisitorMooring.add(new Instr(Prim.STRK, new BasicStroke(2.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
     181    VisitorMooring.add(new Instr(Prim.ELPS, new Ellipse2D.Double(6.5,-49.5,12,12)));
     182    VisitorMooring.add(new Instr(Prim.FILL, Color.white));
     183                p = new Path2D.Double(); p.moveTo(8.3,-32.8); p.lineTo(12.5,-32.8); p.lineTo(5.4,-12.9); p.lineTo(1.0,-12.9); p.lineTo(-6.1,-32.8);
     184                p.lineTo(-1.9,-32.8); p.lineTo(3.2,-18.1); p.closePath();
     185                VisitorMooring.add(new Instr(Prim.PGON, p));
     186        }
    29187}
  • applications/editors/josm/plugins/smed2/src/symbols/Harbours.java

    r29109 r29120  
    1010package symbols;
    1111
     12import java.awt.BasicStroke;
     13import java.awt.Color;
     14import java.awt.geom.Arc2D;
     15import java.awt.geom.Ellipse2D;
     16import java.awt.geom.Line2D;
     17import java.awt.geom.Path2D;
     18import java.awt.geom.Rectangle2D;
    1219import java.util.ArrayList;
    1320
    1421import symbols.Symbols.Instr;
     22import symbols.Symbols.Prim;
    1523
    1624public class Harbours {
     25        public static final ArrayList<Instr> Anchor = new ArrayList<Instr>();
     26        static {
     27                Anchor.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     28                Anchor.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-59,20,20)));
     29                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);
     30                p.lineTo(27.0,18.0); p.lineTo(52.0,0.0); p.lineTo(45.0,35.0); p.lineTo(37.0,28.0);      p.quadTo(25.0,39.0,7.0,43.0); p.lineTo(6.0,51.0);
     31                p.lineTo(-6.0,51.0); p.lineTo(-7.0,43.0);       p.quadTo(-25.0,39.0,-37.0,28.0); p.lineTo(-45.0,35.0); p.lineTo(-52.0,0.0); p.lineTo(-27.0,18.0);
     32                p.lineTo(-31.0,22.0); p.quadTo(-21.0,29.0,-7.0,31.0); p.lineTo(-6.0,-30.0); p.lineTo(-23.0,-30.0); p.lineTo(-23.0,-40.0); p.closePath();
     33                Anchor.add(new Instr(Prim.PGON, p));
     34        }
     35        public static final ArrayList<Instr> Yacht = new ArrayList<Instr>();
     36        static {
     37                Yacht.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     38                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);
     39                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();
     40                p.moveTo(-50.0,45.0); p.curveTo(-55.0,3.0,-37.0,-28.5,-7.0,-46.0); p.curveTo(-28.0,-15.0,-26.0,11.0,-20.5,30.0); p.closePath();
     41                Yacht.add(new Instr(Prim.PGON, p));
     42        }
     43        public static final ArrayList<Instr> Anchorage = new ArrayList<Instr>();
     44        static {
     45                Anchorage.add(new Instr(Prim.FILL, new Color(0xa30075)));
     46                Anchorage.add(new Instr(Prim.SYMB, new Symbols.Symbol(Harbours.Anchor, 1.0, 0, 0, null, null)));
     47        }
    1748        public static final ArrayList<Instr> AnchorBerth = new ArrayList<Instr>();
    18         public static final ArrayList<Instr> Anchorage = new ArrayList<Instr>();
     49        static {
     50                AnchorBerth.add(new Instr(Prim.SYMB, new Symbols.Symbol(Harbours.Anchorage, 1.0, 0, 0, null, null)));
     51                AnchorBerth.add(new Instr(Prim.STRK, new BasicStroke(2.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     52                AnchorBerth.add(new Instr(Prim.FILL, Color.white));
     53                Ellipse2D.Double s = new Ellipse2D.Double(-25,-25,50,50);
     54                AnchorBerth.add(new Instr(Prim.RSHP, s));
     55                AnchorBerth.add(new Instr(Prim.FILL, new Color(0xa30075)));
     56                AnchorBerth.add(new Instr(Prim.ELPS, s));
     57        }
    1958        public static final ArrayList<Instr> Bollard = new ArrayList<Instr>();
     59        static {
     60                Bollard.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     61                Bollard.add(new Instr(Prim.FILL, Color.white));
     62                Ellipse2D.Double s = new Ellipse2D.Double(-10,-10,20,20);
     63                Bollard.add(new Instr(Prim.RSHP, s));
     64                Bollard.add(new Instr(Prim.FILL, Color.black));
     65                Bollard.add(new Instr(Prim.ELPS, s));
     66        }
    2067        public static final ArrayList<Instr> ClearV = new ArrayList<Instr>();
     68        static {
     69                ClearV.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     70                ClearV.add(new Instr(Prim.FILL, Color.white));
     71                ClearV.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-30,-30,60,60)));
     72                ClearV.add(new Instr(Prim.FILL, Color.black));
     73                ClearV.add(new Instr(Prim.LINE, new Line2D.Double(-10,-25,10,-25)));
     74                ClearV.add(new Instr(Prim.LINE, new Line2D.Double(0,-25,0,-15)));
     75                ClearV.add(new Instr(Prim.LINE, new Line2D.Double(-10,25,10,25)));
     76                ClearV.add(new Instr(Prim.LINE, new Line2D.Double(0,25,0,15)));
     77        }
    2178        public static final ArrayList<Instr> ContainerCrane = new ArrayList<Instr>();
     79        static {
     80                ContainerCrane.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     81                ContainerCrane.add(new Instr(Prim.FILL, Color.black));
     82                ContainerCrane.add(new Instr(Prim.RSHP, new Rectangle2D.Double(-15,-65,30,100)));
     83                ContainerCrane.add(new Instr(Prim.RECT, new Rectangle2D.Double(-40,-12.5,80,25)));
     84        }
    2285        public static final ArrayList<Instr> DeviationDolphin = new ArrayList<Instr>();
     86        static {
     87                DeviationDolphin.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     88                DeviationDolphin.add(new Instr(Prim.FILL, Color.black));
     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);
     90                p.moveTo(-20.0,0.0); p.lineTo(-15.0,-32.0); p.lineTo(15.0,-32.0); p.lineTo(20.0,0.0);
     91                DeviationDolphin.add(new Instr(Prim.PLIN, p));
     92        }
    2393        public static final ArrayList<Instr> DistanceI = new ArrayList<Instr>();
     94        static {
     95                DistanceI.add(new Instr(Prim.STRK, new BasicStroke(3.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     96                DistanceI.add(new Instr(Prim.FILL, Color.black));
     97                DistanceI.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-11,-11,22,22)));
     98        }
    2499        public static final ArrayList<Instr> DistanceU = new ArrayList<Instr>();
     100        static {
     101                DistanceU.add(new Instr(Prim.STRK, new BasicStroke(3.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     102                DistanceU.add(new Instr(Prim.FILL, new Color(0xa30075)));
     103                DistanceU.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-11,-11,22,22)));
     104        }
    25105        public static final ArrayList<Instr> Dolphin = new ArrayList<Instr>();
     106        static {
     107                Dolphin.add(new Instr(Prim.STRK, new BasicStroke(2.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     108                Dolphin.add(new Instr(Prim.FILL, new Color(0xffd400)));
     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);
     110                p.lineTo(-3.8,9.2); p.lineTo(-9.2,3.8); p.lineTo(-9.2,-3.8); p.lineTo(-3.8,-9.2); p.closePath();
     111                Dolphin.add(new Instr(Prim.PGON, p));
     112                Dolphin.add(new Instr(Prim.FILL, Color.black));
     113                Dolphin.add(new Instr(Prim.PLIN, p));
     114        }
    26115        public static final ArrayList<Instr> Harbour = new ArrayList<Instr>();
     116        static {
     117                Harbour.add(new Instr(Prim.STRK, new BasicStroke(15.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     118                Harbour.add(new Instr(Prim.FILL, new Color(0xa30075)));
     119                Harbour.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-75,-75,150,150)));
     120                Harbour.add(new Instr(Prim.SYMB, new Symbols.Symbol(Harbours.Anchor, 1.0, 0, 0, null, null)));
     121        }
    27122        public static final ArrayList<Instr> HarbourMaster = new ArrayList<Instr>();
     123        static {
     124                HarbourMaster.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     125                HarbourMaster.add(new Instr(Prim.FILL, Color.black));
     126                HarbourMaster.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-35,-50,70,100)));
     127                HarbourMaster.add(new Instr(Prim.SYMB, new Symbols.Symbol(Harbours.Anchor, 0.6, 0, 0, null, null)));
     128        }
    28129        public static final ArrayList<Instr> LandingSteps = new ArrayList<Instr>();
     130        static {
     131                LandingSteps.add(new Instr(Prim.FILL, new Color(0xa30075)));
     132                Path2D.Double p = new Path2D.Double(); p.moveTo(-20,-10); p.lineTo(10,20); p.lineTo(20,20); p.lineTo(20,10);
     133                p.lineTo(10,10); p.lineTo(10,0); p.lineTo(0,0); p.lineTo(0,-10); p.lineTo(-10,-10); p.lineTo(-10,-20); p.lineTo(-20,-20); p.closePath();
     134                LandingSteps.add(new Instr(Prim.PGON, p));
     135        }
    29136        public static final ArrayList<Instr> Lock_Gate = new ArrayList<Instr>();
    30137        public static final ArrayList<Instr> Lock = new ArrayList<Instr>();
    31138        public static final ArrayList<Instr> Marina = new ArrayList<Instr>();
     139        static {
     140                Marina.add(new Instr(Prim.STRK, new BasicStroke(15.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     141                Marina.add(new Instr(Prim.FILL, new Color(0xa30075)));
     142                Marina.add(new Instr(Prim.SYMB, new Symbols.Symbol(Harbours.Yacht, 1.0, 0, 0, null, null)));
     143                Marina.add(new Instr(Prim.EARC, new Arc2D.Double(-80.0,-80.0,160.0,160.0,215.0,-250.0,Arc2D.OPEN)));
     144        }
    32145        public static final ArrayList<Instr> MarinaNF = new ArrayList<Instr>();
     146        static {
     147                MarinaNF.add(new Instr(Prim.STRK, new BasicStroke(15.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     148                MarinaNF.add(new Instr(Prim.FILL, new Color(0xa30075)));
     149                MarinaNF.add(new Instr(Prim.SYMB, new Symbols.Symbol(Harbours.Yacht, 1.0, 0, 0, null, null)));
     150        }
    33151        public static final ArrayList<Instr> PortCrane = new ArrayList<Instr>();
     152        static {
     153                PortCrane.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     154                PortCrane.add(new Instr(Prim.FILL, Color.black));
     155                PortCrane.add(new Instr(Prim.EARC, new Arc2D.Double(-36.0,-36.0,72.0,72.0,70.0,-320.0,Arc2D.OPEN)));
     156                PortCrane.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-60)));
     157        }
    34158        public static final ArrayList<Instr> Post = new ArrayList<Instr>();
    35         public static final ArrayList<Instr> Signal_Station = new ArrayList<Instr>();
    36         public static final ArrayList<Instr> Tide_Gauge = new ArrayList<Instr>();
     159        static {
     160                Post.add(new Instr(Prim.FILL, Color.black));
     161                Post.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-10,-10,20,20)));
     162        }
     163        public static final ArrayList<Instr> SignalStation = new ArrayList<Instr>();
     164        static {
     165                SignalStation.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     166                SignalStation.add(new Instr(Prim.FILL, Color.black));
     167                SignalStation.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-25,-25,50,50)));
     168                SignalStation.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-4,-4,8,8)));
     169        }
     170        public static final ArrayList<Instr> TideGauge = new ArrayList<Instr>();
     171        static {
     172                TideGauge.add(new Instr(Prim.STRK, new BasicStroke(3.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     173                TideGauge.add(new Instr(Prim.FILL, Color.black));
     174                TideGauge.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-10,20,20)));
     175                TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(-10,0,-30,0)));
     176                TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(10,0,30,0)));
     177                TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(0,-10,0,-80)));
     178                TideGauge.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     179                TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(-15,-25,15,-25)));
     180                TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(-25,-45,25,-45)));
     181                TideGauge.add(new Instr(Prim.LINE, new Line2D.Double(-15,-65,15,-65)));
     182        }
    37183}
  • applications/editors/josm/plugins/smed2/src/symbols/Landmarks.java

    r29114 r29120  
    3434        public static final ArrayList<Instr> Chimney = new ArrayList<Instr>();
    3535        static {
    36                 Chimney.add(new Instr(Prim.SYMB, Landmarks.Base));
    37                 Base.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
     36                Chimney.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
     37                Chimney.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    3838                Chimney.add(new Instr(Prim.FILL, Color.black));
    3939                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);
     
    6262        public static final ArrayList<Instr> Cross = new ArrayList<Instr>();
    6363        static {
    64                 Cross.add(new Instr(Prim.SYMB, Landmarks.Base));
     64                Cross.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    6565                Cross.add(new Instr(Prim.STRK, new BasicStroke(6.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    6666                Cross.add(new Instr(Prim.FILL, Color.black));
     
    7070        public static final ArrayList<Instr> DishAerial = new ArrayList<Instr>();
    7171        static {
    72                 DishAerial.add(new Instr(Prim.SYMB, Landmarks.Base));
     72                DishAerial.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    7373                DishAerial.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)));
    7474                DishAerial.add(new Instr(Prim.FILL, Color.black));
     
    8282                Dome.add(new Instr(Prim.FILL, Color.black));
    8383                Dome.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-36,-36,72,72)));
    84                 Dome.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-2,-2,4,4)));
     84                Dome.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-4,-4,8,8)));
    8585        }
    8686        public static final ArrayList<Instr> Flagstaff = new ArrayList<Instr>();
    8787        static {
    88                 Flagstaff.add(new Instr(Prim.SYMB, Landmarks.Base));
     88                Flagstaff.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    8989                Flagstaff.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    9090                Flagstaff.add(new Instr(Prim.FILL, Color.black));
     
    9494        public static final ArrayList<Instr> FlareStack = new ArrayList<Instr>();
    9595        static {
    96                 FlareStack.add(new Instr(Prim.SYMB, Landmarks.Base));
     96                FlareStack.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    9797                FlareStack.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    9898                FlareStack.add(new Instr(Prim.FILL, Color.black));
     
    105105        public static final ArrayList<Instr> LandTower = new ArrayList<Instr>();
    106106        static {
    107                 LandTower.add(new Instr(Prim.SYMB, Landmarks.Base));
     107                LandTower.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    108108                LandTower.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    109109                LandTower.add(new Instr(Prim.FILL, Color.black));
     
    114114        public static final ArrayList<Instr> Mast = new ArrayList<Instr>();
    115115        static {
    116                 Mast.add(new Instr(Prim.SYMB, Landmarks.Base));
     116                Mast.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    117117                Mast.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)));
    118118                Mast.add(new Instr(Prim.FILL, Color.black));
     
    122122        public static final ArrayList<Instr> RadioMast = new ArrayList<Instr>();
    123123        static {
    124                 RadioMast.add(new Instr(Prim.SYMB, Landmarks.Mast));
     124                RadioMast.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Mast, 1.0, 0, 0, null, null)));
    125125                RadioMast.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_BEVEL)));
    126126                RadioMast.add(new Instr(Prim.FILL, Color.black));
     
    132132        public static final ArrayList<Instr> Monument = new ArrayList<Instr>();
    133133        static {
    134                 Monument.add(new Instr(Prim.SYMB, Landmarks.Base));
     134                Monument.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    135135                Monument.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));
    136136                Monument.add(new Instr(Prim.FILL, Color.black));
     
    144144                Platform.add(new Instr(Prim.FILL, Color.black));
    145145                Platform.add(new Instr(Prim.RECT, new Rectangle2D.Double(-48,-48,96,96)));
    146                 Platform.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-2,-2,4,4)));
     146                Platform.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-4,-4,8,8)));
    147147        }
    148148        public static final ArrayList<Instr> Spire = new ArrayList<Instr>();
     
    151151                Spire.add(new Instr(Prim.FILL, Color.black));
    152152                Spire.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-25,-25,50,50)));
    153                 Spire.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-2,-2,4,4)));
     153                Spire.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-4,-4,8,8)));
    154154        }
    155155        public static final ArrayList<Instr> Minaret = new ArrayList<Instr>();
    156156        static {
    157                 Minaret.add(new Instr(Prim.SYMB, Landmarks.Spire));
     157                Minaret.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Spire, 1.0, 0, 0, null, null)));
    158158                Minaret.add(new Instr(Prim.STRK, new BasicStroke(6.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    159159                Minaret.add(new Instr(Prim.LINE, new Line2D.Double(0,-25,0,-50)));
     
    171171        public static final ArrayList<Instr> WaterTower = new ArrayList<Instr>();
    172172        static {
    173                 WaterTower.add(new Instr(Prim.SYMB, Landmarks.Base));
     173                WaterTower.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    174174                WaterTower.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    175175                WaterTower.add(new Instr(Prim.FILL, Color.black));
     
    180180        public static final ArrayList<Instr> WindMotor = new ArrayList<Instr>();
    181181        static {
    182                 WindMotor.add(new Instr(Prim.SYMB, Landmarks.Base));
     182                WindMotor.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    183183                WindMotor.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));
    184184                WindMotor.add(new Instr(Prim.FILL, Color.black));
     
    198198        public static final ArrayList<Instr> Windsock = new ArrayList<Instr>();
    199199        static {
    200                 Windsock.add(new Instr(Prim.SYMB, Landmarks.Base));
     200                Windsock.add(new Instr(Prim.SYMB, new Symbols.Symbol(Landmarks.Base, 1.0, 0, 0, null, null)));
    201201                Windsock.add(new Instr(Prim.STRK, new BasicStroke(4.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));
    202202                Windsock.add(new Instr(Prim.FILL, Color.black));
  • applications/editors/josm/plugins/smed2/src/symbols/Notices.java

    r29109 r29120  
    1515
    1616public class Notices {
     17        public static final ArrayList<Instr> NoticeAnchor = new ArrayList<Instr>();
     18        public static final ArrayList<Instr> NoticeBollard = new ArrayList<Instr>();
     19        public static final ArrayList<Instr> NoticeCrossing = new ArrayList<Instr>();
     20        public static final ArrayList<Instr> NoticeCrossingL = new ArrayList<Instr>();
     21        public static final ArrayList<Instr> NoticeCrossingR = new ArrayList<Instr>();
     22        public static final ArrayList<Instr> NoticeJunction = new ArrayList<Instr>();
     23        public static final ArrayList<Instr> NoticeJunctionL = new ArrayList<Instr>();
     24        public static final ArrayList<Instr> NoticeJunctionR = new ArrayList<Instr>();
     25        public static final ArrayList<Instr> NoticeMotor = new ArrayList<Instr>();
     26        public static final ArrayList<Instr> NoticeP = new ArrayList<Instr>();
     27        public static final ArrayList<Instr> NoticeProceed = new ArrayList<Instr>();
     28        public static final ArrayList<Instr> NoticeRowboat = new ArrayList<Instr>();
     29        public static final ArrayList<Instr> NoticeSailboard = new ArrayList<Instr>();
     30        public static final ArrayList<Instr> NoticeSailboat = new ArrayList<Instr>();
     31        public static final ArrayList<Instr> NoticeSlipway = new ArrayList<Instr>();
     32        public static final ArrayList<Instr> NoticeSpeedboat = new ArrayList<Instr>();
     33        public static final ArrayList<Instr> NoticeSport = new ArrayList<Instr>();
     34        public static final ArrayList<Instr> NoticeTurn = new ArrayList<Instr>();
     35        public static final ArrayList<Instr> NoticeVHF = new ArrayList<Instr>();
     36        public static final ArrayList<Instr> NoticeWaterbike = new ArrayList<Instr>();
     37        public static final ArrayList<Instr> NoticeWaterski = new ArrayList<Instr>();
    1738        public static final ArrayList<Instr> Notice = new ArrayList<Instr>();
    1839        public static final ArrayList<Instr> NoticeA = new ArrayList<Instr>();
     
    2647        public static final ArrayList<Instr> Notice10a = new ArrayList<Instr>();
    2748        public static final ArrayList<Instr> Notice10b = new ArrayList<Instr>();
    28         public static final ArrayList<Instr> NoticeAnchor = new ArrayList<Instr>();
    2949        public static final ArrayList<Instr> NoticeB = new ArrayList<Instr>();
    3050        public static final ArrayList<Instr> NoticeB2a = new ArrayList<Instr>();
     
    3757        public static final ArrayList<Instr> NoticeB7 = new ArrayList<Instr>();
    3858        public static final ArrayList<Instr> NoticeB8 = new ArrayList<Instr>();
    39         public static final ArrayList<Instr> NoticeBollard = new ArrayList<Instr>();
    4059        public static final ArrayList<Instr> NoticeC1 = new ArrayList<Instr>();
    4160        public static final ArrayList<Instr> NoticeC2 = new ArrayList<Instr>();
     
    4362        public static final ArrayList<Instr> NoticeC5a = new ArrayList<Instr>();
    4463        public static final ArrayList<Instr> NoticeC5b = new ArrayList<Instr>();
    45         public static final ArrayList<Instr> NoticeCrossing = new ArrayList<Instr>();
    46         public static final ArrayList<Instr> NoticeCrossingL = new ArrayList<Instr>();
    47         public static final ArrayList<Instr> NoticeCrossingR = new ArrayList<Instr>();
    4864        public static final ArrayList<Instr> NoticeD1a = new ArrayList<Instr>();
    4965        public static final ArrayList<Instr> NoticeD1b = new ArrayList<Instr>();
     
    7288        public static final ArrayList<Instr> Notice13 = new ArrayList<Instr>();
    7389        public static final ArrayList<Instr> Notice14 = new ArrayList<Instr>();
    74         public static final ArrayList<Instr> NoticeJunction = new ArrayList<Instr>();
    75         public static final ArrayList<Instr> NoticeJunctionL = new ArrayList<Instr>();
    76         public static final ArrayList<Instr> NoticeJunctionR = new ArrayList<Instr>();
    77         public static final ArrayList<Instr> NoticeMotor = new ArrayList<Instr>();
    78         public static final ArrayList<Instr> NoticeP = new ArrayList<Instr>();
    79         public static final ArrayList<Instr> NoticeProceed = new ArrayList<Instr>();
    80         public static final ArrayList<Instr> NoticeRowboat = new ArrayList<Instr>();
    81         public static final ArrayList<Instr> NoticeSailboard = new ArrayList<Instr>();
    82         public static final ArrayList<Instr> NoticeSailboat = new ArrayList<Instr>();
    83         public static final ArrayList<Instr> NoticeSlipway = new ArrayList<Instr>();
    84         public static final ArrayList<Instr> NoticeSpeedboat = new ArrayList<Instr>();
    85         public static final ArrayList<Instr> NoticeSport = new ArrayList<Instr>();
    86         public static final ArrayList<Instr> NoticeTurn = new ArrayList<Instr>();
    87         public static final ArrayList<Instr> NoticeVHF = new ArrayList<Instr>();
    88         public static final ArrayList<Instr> NoticeWaterbike = new ArrayList<Instr>();
    89         public static final ArrayList<Instr> NoticeWaterski = new ArrayList<Instr>();
    9090}
  • applications/editors/josm/plugins/smed2/src/symbols/Symbols.java

    r29114 r29120  
    2323
    2424        public enum Prim {
    25                 BBOX, STRK, COLR, FILL, LINE, RECT, RRCT, ELPS, EARC, PLIN, PGON, SYMB, P1, P2, H2, H3, H4, H5, V2, D2, D3, D4, B2, S2, S3, S4, C2, X2
     25                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
    2626        }
    2727
     
    3030        }
    3131
    32         public static final double symbolScale[] = { 1.0, 128.0, 64.0, 32.0, 16.0, 8.0, 4.0, 2.0, 1.0, 0.61, 0.372, 0.227, 0.138,
     32        public static final double symbolScale[] = { 256.0, 128.0, 64.0, 32.0, 16.0, 8.0, 4.0, 2.0, 1.0, 0.61, 0.372, 0.227, 0.138,
    3333                        0.0843, 0.0514, 0.0313, 0.0191, 0.0117, 0.007, 0.138 };
    3434
    35         public static final double textScale[] = { 1.0, 128.0, 64.0, 32.0, 16.0, 8.0, 4.0, 2.0, 1.0, 0.5556, 0.3086, 0.1714, 0.0953,
     35        public static final double textScale[] = { 256.0, 128.0, 64.0, 32.0, 16.0, 8.0, 4.0, 2.0, 1.0, 0.5556, 0.3086, 0.1714, 0.0953,
    3636                        0.0529, 0.0294, 0.0163, 0.0091, 0.0050, 0.0028, 0.0163 };
    3737
     
    8484        }
    8585
    86         public static void drawSymbol(Graphics2D g2, ArrayList<Instr> symbol, int zoom, double x, double y, Delta dd, Scheme cs) {
     86        public static class Symbol {
     87                ArrayList<Instr> instr;
     88                double scale;
     89                double x;
     90                double y;
     91                Delta delta;
     92                Scheme scheme;
     93
     94                public Symbol(ArrayList<Instr> iinstr, double iscale, double ix, double iy, Delta idelta, Scheme ischeme) {
     95                        instr = iinstr;
     96                        scale = iscale;
     97                        x = ix;
     98                        y = iy;
     99                        delta = idelta;
     100                        scheme = ischeme;
     101                }
     102        }
     103
     104        public static void drawSymbol(Graphics2D g2, ArrayList<Instr> symbol, double scale, double x, double y, Delta dd, Scheme cs) {
    87105                int pn = 0;
    88106                int cn = 0;
     
    93111                AffineTransform savetr = g2.getTransform();
    94112                g2.translate(x, y);
    95                 g2.scale(symbolScale[zoom], symbolScale[zoom]);
     113                g2.scale(scale, scale);
    96114                for (Instr item : symbol) {
    97115                        switch (item.type) {
     
    224242                                g2.fill((Path2D.Double) item.params);
    225243                                break;
     244                        case RSHP:
     245                                g2.fill((RectangularShape) item.params);
     246                                break;
    226247                        case SYMB:
    227                                 drawSymbol(g2, (ArrayList<Instr>) item.params, 0, 0.0, 0.0, null, null);
     248                                Symbol s = (Symbol) item.params;
     249                                drawSymbol(g2, s.instr, s.scale, s.x, s.y, s.delta, s.scheme);
     250                                break;
     251                        case TEXT:
    228252                                break;
    229253                        }
Note: See TracChangeset for help on using the changeset viewer.