Changeset 30029 in osm for applications/editors/josm


Ignore:
Timestamp:
2013-10-26T13:45:17+02:00 (11 years ago)
Author:
malcolmh
Message:

save

Location:
applications/editors/josm/plugins/smed2/src
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/smed2/src/seamap/Renderer.java

    r30028 r30029  
    330330
    331331        public static void labelText(Feature feature, String str, Font font, LabelStyle style, Color fg, Color bg, Delta delta) {
    332                 if (delta == null) delta = new Delta(Handle.CC, null);
     332                if (delta == null) delta = new Delta(Handle.CC, AffineTransform.getTranslateInstance(0, 0));
    333333                if (bg == null) bg = new Color(0x00000000, true);
    334                 if (str == null) str = " ";
    335                 if (str.isEmpty()) str = " ";
     334                if ((str == null) || (str.isEmpty())) str = " ";
    336335    FontRenderContext frc = g2.getFontRenderContext();
    337     GlyphVector gv = font.deriveFont((float)(font.getSize())).createGlyphVector(frc, str.equals(" ") ? "M" : str);
     336    GlyphVector gv = font.deriveFont((float)(font.getSize())).createGlyphVector(frc, str.equals(" ") ? "!" : str);
    338337    Rectangle2D bounds = gv.getVisualBounds();
    339338    double width = bounds.getWidth();
    340339    double height = bounds.getHeight();
    341                 if (width < height) width = height;
    342     double dx = 0;
    343     double dy = 0;
    344                 switch (delta.h) {
    345                 case CC:
    346                         dx += width / 2.0;
    347                         dy += height / 2.0;
    348                         break;
    349                 case TR:
    350                         dx += width;
    351                         break;
    352                 case TC:
    353                         dx += width / 2.0;
    354                         break;
    355                 case LC:
    356                         dy += height / 2.0;
    357                         break;
    358                 case RC:
    359                         dx += width;
    360                         dy += height / 2.0;
    361                         break;
    362                 case BL:
    363                         dy += height;
    364                         break;
    365                 case BR:
    366                         dx += width;
    367                         dy += height;
    368                         break;
    369                 case BC:
    370                         dx += width / 2.0;
    371                         dy += height;
    372                         break;
    373                 }
    374                 width += (height * 0.8);
    375                 dx += (height * 0.4);
    376                 height *= 1.5;
    377                 dy += (height * 0.15);
    378340                Symbol label = new Symbol();
     341                double lx = 0;
     342                double ly = 0;
     343                double tx = 0;
     344                double ty = 0;
    379345                switch (style) {
    380346                case RRCT:
     347                        width += height * 1.0;
     348                        height *= 1.5;
     349            if (width < height) width = height;
     350            lx = -width / 2;
     351            ly = -height / 2;
     352            tx = lx + (height * 0.34);
     353            ty = ly + (height * 0.17);
     354                        label.add(new Instr(Prim.BBOX, new Rectangle2D.Double(lx,ly,width,height)));
    381355                        label.add(new Instr(Prim.FILL, bg));
    382                         label.add(new Instr(Prim.RSHP, new RoundRectangle2D.Double(-dx,-dy,width,height,height,height)));
     356                        label.add(new Instr(Prim.RSHP, new RoundRectangle2D.Double(lx,ly,width,height,height,height)));
    383357                        label.add(new Instr(Prim.FILL, fg));
    384358                        label.add(new Instr(Prim.STRK, new BasicStroke(1 + (int)(height/10), BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    385                         label.add(new Instr(Prim.RRCT, new RoundRectangle2D.Double(-dx,-dy,width,height,height,height)));
     359                        label.add(new Instr(Prim.RRCT, new RoundRectangle2D.Double(lx,ly,width,height,height,height)));
    386360                        break;
    387361                case VCLR:
    388                         height += 20;
    389                         dy += 10;
     362                        width += height * 1.0;
     363                        height *= 2.0;
     364            if (width < height) width = height;
     365            lx = -width / 2;
     366            ly = -height / 2;
     367            tx = lx + (height * 0.27);
     368            ty = ly + (height * 0.25);
     369                        label.add(new Instr(Prim.BBOX, new Rectangle2D.Double(lx,ly,width,height)));
    390370                        label.add(new Instr(Prim.FILL, bg));
    391                         label.add(new Instr(Prim.RSHP, new RoundRectangle2D.Double(-dx,-dy,width,height,height,height)));
     371                        label.add(new Instr(Prim.RSHP, new RoundRectangle2D.Double(lx,ly,width,height,height,height)));
    392372                        label.add(new Instr(Prim.FILL, fg));
    393373                        int sw = 1 + (int)(height/10);
    394                         double po = dy - (sw / 2);
     374                        double po = sw / 2;
    395375                        label.add(new Instr(Prim.STRK, new BasicStroke(sw, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    396                         Path2D.Double p = new Path2D.Double(); p.moveTo(-(height*0.2),po); p.lineTo((height*0.2),po); p.moveTo(0,po); p.lineTo(0,po-10);
    397                         p.moveTo(-(height*0.2),-po); p.lineTo((height*0.2),-po); p.moveTo(0,-po); p.lineTo(0,-po+10);
     376                        Path2D.Double p = new Path2D.Double(); p.moveTo(-height*0.2,-ly-po); p.lineTo(height*0.2,-ly-po); p.moveTo(0,-ly-po); p.lineTo(0,-ly-po-(height*0.15));
     377                        p.moveTo(-height*0.2,ly+po); p.lineTo((height*0.2),ly+po); p.moveTo(0,ly+po); p.lineTo(0,ly+po+(height*0.15));
    398378                        label.add(new Instr(Prim.PLIN, p));
    399379                        break;
    400380                }
    401                 label.add(new Instr(Prim.TEXT, new Caption(str, font, fg, delta)));
     381                label.add(new Instr(Prim.TEXT, new Caption(str, font, fg, new Delta(Handle.TL, AffineTransform.getTranslateInstance(tx, ty)))));
    402382                Point2D point = context.getPoint(feature.centre);
    403                 Symbols.drawSymbol(g2, label, sScale, point.getX(), point.getY(), null, null);
     383                Symbols.drawSymbol(g2, label, sScale, point.getX(), point.getY(), delta, null);
    404384        }
    405385
  • applications/editors/josm/plugins/smed2/src/seamap/Rules.java

    r30028 r30029  
    332332                        if (zoom >= 14) {
    333333                                Renderer.symbol(feature, Harbours.Anchorage, null, null, new Scheme(Mline));
    334                                 Renderer.labelText(feature, name == null ? " " : (String) name.val, new Font("Arial", Font.PLAIN, 30), LabelStyle.RRCT, Mline, Color.white, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 0)));
     334                        Renderer.labelText(feature, name == null ? "" : (String) name.val, new Font("Arial", Font.PLAIN, 30), LabelStyle.RRCT, Mline, Color.white, new Delta(Handle.BC, AffineTransform.getTranslateInstance(0, 0)));
    335335                        }
    336336                        double radius = (Double)Renderer.getAttVal(feature, Obj.ACHBRT, 0, Att.RADIUS);
  • applications/editors/josm/plugins/smed2/src/symbols/Areas.java

    r30023 r30029  
    1919        public static final Symbol Plane = new Symbol();
    2020        static {
    21                 Plane.add(new Instr(Prim.BBOX, new Rectangle(-60,-60,120,120)));
     21                Plane.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-60,-60,120,120)));
    2222                Path2D.Double p = new Path2D.Double(); p.moveTo(40,20); p.lineTo(50,10); p.lineTo(27.0,13.3); p.lineTo(23.7,6.8); p.lineTo(40.0,5.0); p.curveTo(55,4,55,-9,40,-10);
    2323                p.quadTo(31,-11,30,-15); p.lineTo(-30,2); p.quadTo(-35,-12,-45,-15); p.quadTo(-56,-3,-50,15); p.lineTo(18.4,7.3); p.lineTo(21.7,14); p.lineTo(-20,20); p.closePath();
     
    2626        public static final Symbol Cable = new Symbol();
    2727        static {
    28                 Cable.add(new Instr(Prim.BBOX, new Rectangle(-30,-60,60,60)));
     28                Cable.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-60,60,60)));
    2929                Cable.add(new Instr(Prim.STRK, new BasicStroke(8, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND)));
    3030                Cable.add(new Instr(Prim.FILL, new Color(0xc480ff)));
     
    3434        public static final Symbol LaneArrow = new Symbol();
    3535        static {
    36                 LaneArrow.add(new Instr(Prim.BBOX, new Rectangle(-20,-240,40,240)));
     36                LaneArrow.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-20,-240,40,240)));
    3737                LaneArrow.add(new Instr(Prim.STRK, new BasicStroke(10, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));
    3838                LaneArrow.add(new Instr(Prim.FILL, new Color(0x80c480ff, true)));
     
    4343        public static final Symbol LineAnchor = new Symbol();
    4444        static {
    45                 LineAnchor.add(new Instr(Prim.BBOX, new Rectangle(-30,-60,60,90)));
     45                LineAnchor.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-60,60,90)));
    4646                LineAnchor.add(new Instr(Prim.SYMB, new Symbols.SubSymbol(Harbours.Anchor, 0.5, 0, 0, new Delta(Handle.CC, AffineTransform.getRotateInstance(Math.toRadians(-90.0))), null)));
    4747        }
     
    7272        public static final Symbol Pipeline = new Symbol();
    7373        static {
    74                 Pipeline.add(new Instr(Prim.BBOX, new Rectangle(-15,-60,30,60)));
     74                Pipeline.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-15,-60,30,60)));
    7575                Pipeline.add(new Instr(Prim.STRK, new BasicStroke(8, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
    7676                Pipeline.add(new Instr(Prim.FILL, new Color(0xc480ff)));
     
    8080        public static final Symbol Restricted = new Symbol();
    8181        static {
    82                 Restricted.add(new Instr(Prim.BBOX, new Rectangle(-15,-30,30,30)));
     82                Restricted.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-15,-30,30,30)));
    8383                Restricted.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND)));
    8484                Restricted.add(new Instr(Prim.LINE, new Line2D.Double(0,0,0,-30)));
     
    125125        public static final Symbol Seaplane = new Symbol();
    126126        static {
    127                 Seaplane.add(new Instr(Prim.BBOX, new Rectangle(-60,-60,120,120)));
     127                Seaplane.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-60,-60,120,120)));
    128128                Seaplane.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    129129                Seaplane.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-58,-58,116,116)));
  • applications/editors/josm/plugins/smed2/src/symbols/Harbours.java

    r30024 r30029  
    1212import java.awt.BasicStroke;
    1313import java.awt.Color;
    14 import java.awt.Rectangle;
    1514import java.awt.geom.*;
    1615
     
    2019        public static final Symbol Anchor = new Symbol();
    2120        static {
    22                 Anchor.add(new Instr(Prim.BBOX, new Rectangle(-60,-60,120,120)));
     21                Anchor.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-60,-60,120,120)));
    2322                Anchor.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    2423                Anchor.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-10,-59,20,20)));
     
    6160        public static final Symbol Customs = new Symbol();
    6261        static {
    63                 Customs.add(new Instr(Prim.BBOX, new Rectangle(-30,-30,60,60)));
     62                Customs.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-30,60,60)));
    6463                Customs.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));
    6564                Customs.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-28,-28,56,56)));
     
    9796        public static final Symbol Explosives = new Symbol();
    9897        static {
    99                 Explosives.add(new Instr(Prim.BBOX, new Rectangle(-30,-30,60,60)));
     98                Explosives.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-30,60,60)));
    10099                Explosives.add(new Instr(Prim.RSHP, new Ellipse2D.Double(-5,25,10,10)));
    101100                Explosives.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND)));
     
    120119        public static final Symbol Hospital = new Symbol();
    121120        static {
    122                 Hospital.add(new Instr(Prim.BBOX, new Rectangle(-30,-30,60,60)));
     121                Hospital.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-30,60,60)));
    123122                Hospital.add(new Instr(Prim.STRK, new BasicStroke(4, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER)));
    124123                Hospital.add(new Instr(Prim.ELPS, new Ellipse2D.Double(-28,-28,56,56)));
  • applications/editors/josm/plugins/smed2/src/symbols/Notices.java

    r29992 r30029  
    1313import java.awt.Color;
    1414import java.awt.Font;
    15 import java.awt.Rectangle;
    1615import java.awt.geom.*;
    1716import java.util.ArrayList;
     
    264263        public static final Symbol NoticeA10a = new Symbol();
    265264        static {
    266                 NoticeA10a.add(new Instr(Prim.BBOX, new Rectangle(-30,-30,60,60)));
     265                NoticeA10a.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-30,60,60)));
    267266                NoticeA10a.add(new Instr(Prim.FILL, Color.white));
    268267                Path2D.Double p = new Path2D.Double(); p.moveTo(0,-30); p.lineTo(30,0); p.lineTo(0,30); p.closePath();
     
    479478        public static final Symbol NoticeD1a = new Symbol();
    480479        static {
    481                 NoticeD1a.add(new Instr(Prim.BBOX, new Rectangle(-30,-30,60,60)));
     480                NoticeD1a.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-30,60,60)));
    482481                NoticeD1a.add(new Instr(Prim.FILL, Color.yellow));
    483482                Path2D.Double p = new Path2D.Double(); p.moveTo(0,-30); p.lineTo(-30,0); p.lineTo(0,30); p.lineTo(30,0); p.closePath();
     
    489488        public static final Symbol NoticeD1b = new Symbol();
    490489        static {
    491                 NoticeD1b.add(new Instr(Prim.BBOX, new Rectangle(-30,-30,60,60)));
     490                NoticeD1b.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-30,60,60)));
    492491                NoticeD1b.add(new Instr(Prim.FILL, Color.yellow));
    493492                Path2D.Double p = new Path2D.Double(); p.moveTo(-30,0); p.lineTo(-15,15); p.lineTo(15,-15); p.lineTo(30,0);     p.lineTo(15,15); p.lineTo(-15,-15); p.closePath();
     
    499498        public static final Symbol NoticeD2a = new Symbol();
    500499        static {
    501                 NoticeD2a.add(new Instr(Prim.BBOX, new Rectangle(-30,-30,60,60)));
     500                NoticeD2a.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-30,60,60)));
    502501                NoticeD2a.add(new Instr(Prim.FILL, Color.white));
    503502                Path2D.Double p = new Path2D.Double(); p.moveTo(0,-30); p.lineTo(30,0); p.lineTo(0,30); p.closePath();
     
    974973        public static final Symbol NoticeBnank = new Symbol();
    975974        static {
    976                 NoticeBnank.add(new Instr(Prim.BBOX, new Rectangle(-30,-30,60,60)));
     975                NoticeBnank.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-30,60,60)));
    977976                Symbol colours = new Symbol();
    978977                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();
  • applications/editors/josm/plugins/smed2/src/symbols/Symbols.java

    r30022 r30029  
    1414import java.awt.Font;
    1515import java.awt.Graphics2D;
    16 import java.awt.Rectangle;
    1716import java.awt.font.TextLayout;
    1817import java.awt.geom.*;
     
    139138                                switch (item.type) {
    140139                                case BBOX:
    141                                         Rectangle bbox = (Rectangle) item.params;
     140                                        Rectangle2D.Double bbox = (Rectangle2D.Double) item.params;
    142141                                        double dx = 0.0;
    143142                                        double dy = 0.0;
  • applications/editors/josm/plugins/smed2/src/symbols/Topmarks.java

    r29198 r30029  
    1212import java.awt.BasicStroke;
    1313import java.awt.Color;
    14 import java.awt.Rectangle;
    15 import java.awt.geom.AffineTransform;
    16 import java.awt.geom.Ellipse2D;
    17 import java.awt.geom.Line2D;
    18 import java.awt.geom.Path2D;
     14import java.awt.geom.*;
    1915import java.util.EnumMap;
    2016
     
    2622        public static final Symbol TopBoard = new Symbol();
    2723        static {
    28                 TopBoard.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
     24                TopBoard.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-20,-80,40,80)));
    2925                Symbol colours = new Symbol();
    3026                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();
     
    3834        public static final Symbol TopCan = new Symbol();
    3935        static {
    40                 TopCan.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
     36                TopCan.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-20,-80,40,80)));
    4137                Symbol colours = new Symbol();
    4238                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();
     
    5147        public static final Symbol TopCone = new Symbol();
    5248        static {
    53                 TopCone.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
     49                TopCone.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-20,-80,40,80)));
    5450                Symbol colours = new Symbol();
    5551                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();
     
    6460        public static final Symbol TopCross = new Symbol();
    6561        static {
    66                 TopCross.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     62                TopCross.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-80,60,80)));
    6763                Symbol colours = new Symbol();
    6864                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);
     
    8076        public static final Symbol TopEast = new Symbol();
    8177        static {
    82                 TopEast.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     78                TopEast.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-80,60,80)));
    8379                Symbol colours = new Symbol();
    8480                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();
     
    9894        public static final Symbol TopIsol = new Symbol();
    9995        static {
    100                 TopIsol.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     96                TopIsol.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-80,60,80)));
    10197                Symbol colours = new Symbol();
    10298                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();
     
    114110        public static final Symbol TopMooring = new Symbol();
    115111        static {
    116                 TopMooring.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     112                TopMooring.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-80,60,80)));
    117113                TopMooring.add(new Instr(Prim.STRK, new BasicStroke(3, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER)));
    118114                TopMooring.add(new Instr(Prim.FILL, Color.black));
     
    122118        public static final Symbol TopNorth = new Symbol();
    123119        static {
    124                 TopNorth.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     120                TopNorth.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-80,60,80)));
    125121                Symbol colours = new Symbol();
    126122                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();
     
    139135        public static final Symbol TopSouth = new Symbol();
    140136        static {
    141                 TopSouth.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     137                TopSouth.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-80,60,80)));
    142138                Symbol colours = new Symbol();
    143139                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();
     
    156152        public static final Symbol TopSphere = new Symbol();
    157153        static {
    158                 TopSphere.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     154                TopSphere.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-80,60,80)));
    159155                Symbol colours = new Symbol();
    160156                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();
     
    169165        public static final Symbol TopSquare = new Symbol();
    170166        static {
    171                 TopSquare.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
     167                TopSquare.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-20,-80,40,80)));
    172168                Symbol colours = new Symbol();
    173169                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();
     
    181177        public static final Symbol TopTriangle = new Symbol();
    182178        static {
    183                 TopTriangle.add(new Instr(Prim.BBOX, new Rectangle(-20,-80,40,80)));
     179                TopTriangle.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-20,-80,40,80)));
    184180                Symbol colours = new Symbol();
    185181                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();
     
    193189        public static final Symbol TopWest = new Symbol();
    194190        static {
    195                 TopWest.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     191                TopWest.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-80,60,80)));
    196192                Symbol colours = new Symbol();
    197193                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();
     
    210206        public static final Symbol TopX = new Symbol();
    211207        static {
    212                 TopX.add(new Instr(Prim.BBOX, new Rectangle(-30,-80,60,80)));
     208                TopX.add(new Instr(Prim.BBOX, new Rectangle2D.Double(-30,-80,60,80)));
    213209                Symbol colours = new Symbol();
    214210                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);
Note: See TracChangeset for help on using the changeset viewer.