
public class SVGPath extends Object
| Modifier and Type | Field and Description | 
|---|---|
| private StringBuilder | bufString buffer for building the path. | 
| private String | lastactionThe last action we did, to not add unnecessary commands | 
| static String | PATH_ARC_RELATIVEThe lower case version (relative) path arc command. | 
| static String | PATH_CUBIC_TO_RELATIVEThe lower case version (relative) cubic line to command. | 
| static String | PATH_HORIZONTAL_LINE_TO_RELATIVEThe lower case version (relative) horizontal line to command. | 
| static String | PATH_LINE_TO_RELATIVEThe lower case version (relative) line to command. | 
| static String | PATH_MOVE_RELATIVEThe lower case version (relative) move command. | 
| static String | PATH_QUAD_TO_RELATIVEThe lower case version (relative) quadratic interpolation to command. | 
| static String | PATH_SMOOTH_CUBIC_TOThe absolute "smooth cubic to" SVG path command (missing from
 SVGConstants). | 
| static String | PATH_SMOOTH_CUBIC_TO_RELATIVEThe lower case version (relative) smooth cubic to command. | 
| static String | PATH_SMOOTH_QUAD_TO_RELATIVEThe lower case version (relative) smooth quadratic interpolation to
 command. | 
| static String | PATH_VERTICAL_LINE_TO_RELATIVEThe lower case version (relative) vertical line to command. | 
| Constructor and Description | 
|---|
| SVGPath()Empty path constructor. | 
| SVGPath(double[] xy)Constructor with initial point. | 
| SVGPath(double x,
       double y)Constructor with initial point. | 
| SVGPath(Polygon vectors)Constructor from a vector collection (e.g. a polygon) | 
| Modifier and Type | Method and Description | 
|---|---|
| private void | append(String action,
      double... ds)Append an action to the current path. | 
| SVGPath | close()Close the path. | 
| SVGPath | cubicTo(double[] c1xy,
       double[] c2xy,
       double[] xy)Cubic Bezier line to the given coordinates. | 
| SVGPath | cubicTo(double c1x,
       double c1y,
       double c2x,
       double c2y,
       double x,
       double y)Cubic Bezier line to the given coordinates. | 
| SVGPath | cubicTo(Vector c1xy,
       Vector c2xy,
       Vector xy)Cubic Bezier line to the given coordinates. | 
| SVGPath | drawTo(double[] xy)Draw a line given a series of coordinates. | 
| SVGPath | drawTo(double x,
      double y)Draw a line given a series of coordinates. | 
| SVGPath | drawTo(Vector xy)Draw a line given a series of coordinates. | 
| SVGPath | ellipticalArc(double rx,
             double ry,
             double ar,
             double la,
             double sp,
             double[] xy)Elliptical arc curve to the given coordinates. | 
| SVGPath | ellipticalArc(double rx,
             double ry,
             double ar,
             double la,
             double sp,
             double x,
             double y)Elliptical arc curve to the given coordinates. | 
| SVGPath | ellipticalArc(Vector rxy,
             double ar,
             double la,
             double sp,
             Vector xy)Elliptical arc curve to the given coordinates. | 
| SVGPath | horizontalLineTo(double x)Draw a horizontal line to the given x coordinate. | 
| boolean | isStarted()Test whether the path drawing has already started. | 
| SVGPath | lineTo(double[] xy)Draw a line to the given coordinates. | 
| SVGPath | lineTo(double x,
      double y)Draw a line to the given coordinates. | 
| SVGPath | lineTo(Vector xy)Draw a line to the given coordinates. | 
| Element | makeElement(Document document)Turn the path buffer into an SVG element. | 
| Element | makeElement(SVGPlot plot)Turn the path buffer into an SVG element. | 
| SVGPath | moveTo(double[] xy)Move to the given coordinates. | 
| SVGPath | moveTo(double x,
      double y)Move to the given coordinates. | 
| SVGPath | moveTo(Vector xy)Move to the given coordinates. | 
| SVGPath | quadTo(double[] c1xy,
      double[] xy)Quadratic Bezier line to the given coordinates. | 
| SVGPath | quadTo(double c1x,
      double c1y,
      double x,
      double y)Quadratic Bezier line to the given coordinates. | 
| SVGPath | quadTo(Vector c1xy,
      Vector xy)Quadratic Bezier line to the given coordinates. | 
| SVGPath | relativeCubicTo(double[] c1xy,
               double[] c2xy,
               double[] xy)Cubic Bezier line to the given relative coordinates. | 
| SVGPath | relativeCubicTo(double c1x,
               double c1y,
               double c2x,
               double c2y,
               double x,
               double y)Cubic Bezier line to the given relative coordinates. | 
| SVGPath | relativeCubicTo(Vector c1xy,
               Vector c2xy,
               Vector xy)Cubic Bezier line to the given relative coordinates. | 
| SVGPath | relativeEllipticalArc(double rx,
                     double ry,
                     double ar,
                     double la,
                     double sp,
                     double[] xy)Elliptical arc curve to the given relative coordinates. | 
| SVGPath | relativeEllipticalArc(double rx,
                     double ry,
                     double ar,
                     double la,
                     double sp,
                     double x,
                     double y)Elliptical arc curve to the given relative coordinates. | 
| SVGPath | relativeEllipticalArc(Vector rxy,
                     double ar,
                     double la,
                     double sp,
                     Vector xy)Elliptical arc curve to the given relative coordinates. | 
| SVGPath | relativeHorizontalLineTo(double x)Draw a horizontal line to the given relative x coordinate. | 
| SVGPath | relativeLineTo(double[] xy)Draw a line to the given relative coordinates. | 
| SVGPath | relativeLineTo(double x,
              double y)Draw a line to the given relative coordinates. | 
| SVGPath | relativeLineTo(Vector xy)Draw a line to the given relative coordinates. | 
| SVGPath | relativeMoveTo(double[] xy)Move to the given relative coordinates. | 
| SVGPath | relativeMoveTo(double x,
              double y)Move to the given relative coordinates. | 
| SVGPath | relativeMoveTo(Vector xy)Move to the given relative coordinates. | 
| SVGPath | relativeQuadTo(double[] c1xy,
              double[] xy)Quadratic Bezier line to the given relative coordinates. | 
| SVGPath | relativeQuadTo(double c1x,
              double c1y,
              double x,
              double y)Quadratic Bezier line to the given relative coordinates. | 
| SVGPath | relativeQuadTo(Vector c1xy,
              Vector xy)Quadratic Bezier line to the given relative coordinates. | 
| SVGPath | relativeSmoothCubicTo(double[] c2xy,
                     double[] xy)Smooth Cubic Bezier line to the given relative coordinates. | 
| SVGPath | relativeSmoothCubicTo(double c2x,
                     double c2y,
                     double x,
                     double y)Smooth Cubic Bezier line to the given relative coordinates. | 
| SVGPath | relativeSmoothCubicTo(Vector c2xy,
                     Vector xy)Smooth Cubic Bezier line to the given relative coordinates. | 
| SVGPath | relativeSmoothQuadTo(double[] xy)Smooth quadratic Bezier line to the given relative coordinates. | 
| SVGPath | relativeSmoothQuadTo(double x,
                    double y)Smooth quadratic Bezier line to the given relative coordinates. | 
| SVGPath | relativeSmoothQuadTo(Vector xy)Smooth quadratic Bezier line to the given relative coordinates. | 
| SVGPath | relativeVerticalLineTo(double y)Draw a vertical line to the given relative y coordinate. | 
| SVGPath | smoothCubicTo(double[] c2xy,
             double[] xy)Smooth Cubic Bezier line to the given coordinates. | 
| SVGPath | smoothCubicTo(double c2x,
             double c2y,
             double x,
             double y)Smooth Cubic Bezier line to the given coordinates. | 
| SVGPath | smoothCubicTo(Vector c2xy,
             Vector xy)Smooth Cubic Bezier line to the given coordinates. | 
| SVGPath | smoothQuadTo(double[] xy)Smooth quadratic Bezier line to the given coordinates. | 
| SVGPath | smoothQuadTo(double x,
            double y)Smooth quadratic Bezier line to the given coordinates. | 
| SVGPath | smoothQuadTo(Vector xy)Smooth quadratic Bezier line to the given coordinates. | 
| String | toString()Return the SVG serialization of the path. | 
| SVGPath | verticalLineTo(double y)Draw a vertical line to the given y coordinate. | 
private StringBuilder buf
private String lastaction
public static final String PATH_SMOOTH_CUBIC_TO
public static final String PATH_LINE_TO_RELATIVE
public static final String PATH_MOVE_RELATIVE
public static final String PATH_HORIZONTAL_LINE_TO_RELATIVE
public static final String PATH_VERTICAL_LINE_TO_RELATIVE
public static final String PATH_CUBIC_TO_RELATIVE
public static final String PATH_SMOOTH_CUBIC_TO_RELATIVE
public static final String PATH_QUAD_TO_RELATIVE
public static final String PATH_SMOOTH_QUAD_TO_RELATIVE
public static final String PATH_ARC_RELATIVE
public SVGPath()
public SVGPath(double x,
       double y)
x - initial coordinatesy - initial coordinatespublic SVGPath(double[] xy)
xy - initial coordinatespublic SVGPath(Polygon vectors)
vectors - vectorspublic SVGPath drawTo(double x, double y)
x - new coordinatesy - new coordinatespublic SVGPath drawTo(double[] xy)
xy - new coordinatespublic SVGPath drawTo(Vector xy)
xy - new coordinatespublic boolean isStarted()
public SVGPath lineTo(double x, double y)
x - new coordinatesy - new coordinatespublic SVGPath lineTo(double[] xy)
xy - new coordinatespublic SVGPath lineTo(Vector xy)
xy - new coordinatespublic SVGPath relativeLineTo(double x, double y)
x - relative coordinatesy - relative coordinatespublic SVGPath relativeLineTo(double[] xy)
xy - new coordinatespublic SVGPath relativeLineTo(Vector xy)
xy - new coordinatespublic SVGPath horizontalLineTo(double x)
x - new coordinatespublic SVGPath relativeHorizontalLineTo(double x)
x - new coordinatespublic SVGPath verticalLineTo(double y)
y - new coordinatepublic SVGPath relativeVerticalLineTo(double y)
y - new coordinatepublic SVGPath moveTo(double x, double y)
x - new coordinatesy - new coordinatespublic SVGPath moveTo(double[] xy)
xy - new coordinatespublic SVGPath moveTo(Vector xy)
xy - new coordinatespublic SVGPath relativeMoveTo(double x, double y)
x - new coordinatesy - new coordinatespublic SVGPath relativeMoveTo(double[] xy)
xy - new coordinatespublic SVGPath relativeMoveTo(Vector xy)
xy - new coordinatespublic SVGPath cubicTo(double c1x, double c1y, double c2x, double c2y, double x, double y)
c1x - first control point xc1y - first control point yc2x - second control point xc2y - second control point yx - new coordinatesy - new coordinatespublic SVGPath cubicTo(double[] c1xy, double[] c2xy, double[] xy)
c1xy - first control pointc2xy - second control pointxy - new coordinatespublic SVGPath cubicTo(Vector c1xy, Vector c2xy, Vector xy)
c1xy - first control pointc2xy - second control pointxy - new coordinatespublic SVGPath relativeCubicTo(double c1x, double c1y, double c2x, double c2y, double x, double y)
c1x - first control point xc1y - first control point yc2x - second control point xc2y - second control point yx - new coordinatesy - new coordinatespublic SVGPath relativeCubicTo(double[] c1xy, double[] c2xy, double[] xy)
c1xy - first control pointc2xy - second control pointxy - new coordinatespublic SVGPath relativeCubicTo(Vector c1xy, Vector c2xy, Vector xy)
c1xy - first control pointc2xy - second control pointxy - new coordinatespublic SVGPath smoothCubicTo(double c2x, double c2y, double x, double y)
c2x - second control point xc2y - second control point yx - new coordinatesy - new coordinatespublic SVGPath smoothCubicTo(double[] c2xy, double[] xy)
c2xy - second control pointxy - new coordinatespublic SVGPath smoothCubicTo(Vector c2xy, Vector xy)
c2xy - second control pointxy - new coordinatespublic SVGPath relativeSmoothCubicTo(double c2x, double c2y, double x, double y)
c2x - second control point xc2y - second control point yx - new coordinatesy - new coordinatespublic SVGPath relativeSmoothCubicTo(double[] c2xy, double[] xy)
c2xy - second control pointxy - new coordinatespublic SVGPath relativeSmoothCubicTo(Vector c2xy, Vector xy)
c2xy - second control pointxy - new coordinatespublic SVGPath quadTo(double c1x, double c1y, double x, double y)
c1x - first control point xc1y - first control point yx - new coordinatesy - new coordinatespublic SVGPath quadTo(double[] c1xy, double[] xy)
c1xy - first control pointxy - new coordinatespublic SVGPath quadTo(Vector c1xy, Vector xy)
c1xy - first control pointxy - new coordinatespublic SVGPath relativeQuadTo(double c1x, double c1y, double x, double y)
c1x - first control point xc1y - first control point yx - new coordinatesy - new coordinatespublic SVGPath relativeQuadTo(double[] c1xy, double[] xy)
c1xy - first control pointxy - new coordinatespublic SVGPath relativeQuadTo(Vector c1xy, Vector xy)
c1xy - first control pointxy - new coordinatespublic SVGPath smoothQuadTo(double x, double y)
x - new coordinatesy - new coordinatespublic SVGPath smoothQuadTo(double[] xy)
xy - new coordinatespublic SVGPath smoothQuadTo(Vector xy)
xy - new coordinatespublic SVGPath relativeSmoothQuadTo(double x, double y)
x - new coordinatesy - new coordinatespublic SVGPath relativeSmoothQuadTo(double[] xy)
xy - new coordinatespublic SVGPath relativeSmoothQuadTo(Vector xy)
xy - new coordinatespublic SVGPath ellipticalArc(double rx, double ry, double ar, double la, double sp, double x, double y)
rx - x radiusry - y radiusar - x-axis-rotationla - large arc flag, if angle >= 180 degsp - sweep flag, if arc will be drawn in positive-angle directionx - new coordinatesy - new coordinatespublic SVGPath ellipticalArc(double rx, double ry, double ar, double la, double sp, double[] xy)
rx - x radiusry - y radiusar - x-axis-rotationla - large arc flag, if angle >= 180 degsp - sweep flag, if arc will be drawn in positive-angle directionxy - new coordinatespublic SVGPath ellipticalArc(Vector rxy, double ar, double la, double sp, Vector xy)
rxy - radiusar - x-axis-rotationla - large arc flag, if angle >= 180 degsp - sweep flag, if arc will be drawn in positive-angle directionxy - new coordinatespublic SVGPath relativeEllipticalArc(double rx, double ry, double ar, double la, double sp, double x, double y)
rx - x radiusry - y radiusar - x-axis-rotationla - large arc flag, if angle >= 180 degsp - sweep flag, if arc will be drawn in positive-angle directionx - new coordinatesy - new coordinatespublic SVGPath relativeEllipticalArc(double rx, double ry, double ar, double la, double sp, double[] xy)
rx - x radiusry - y radiusar - x-axis-rotationla - large arc flag, if angle >= 180 degsp - sweep flag, if arc will be drawn in positive-angle directionxy - new coordinatespublic SVGPath relativeEllipticalArc(Vector rxy, double ar, double la, double sp, Vector xy)
rxy - radiusar - x-axis-rotationla - large arc flag, if angle >= 180 degsp - sweep flag, if arc will be drawn in positive-angle directionxy - new coordinatesprivate void append(String action, double... ds)
action - Current actionds - coordinates.public SVGPath close()
public Element makeElement(Document document)
document - Document context (= element factory)public Element makeElement(SVGPlot plot)
plot - Plot context (= element factory)