|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object de.lmu.ifi.dbs.elki.visualization.svg.SVGPath
public class SVGPath
Element used for building an SVG path using a string buffer.
Field Summary | |
---|---|
private StringBuffer |
buf
String buffer for building the path. |
private String |
lastaction
The last action we did, to not add unnecessary commands |
static String |
PATH_ARC_RELATIVE
The lower case version (relative) path arc command. |
static String |
PATH_CUBIC_TO_RELATIVE
The lower case version (relative) cubic line to command. |
static String |
PATH_HORIZONTAL_LINE_TO_RELATIVE
The lower case version (relative) horizontal line to command. |
static String |
PATH_LINE_TO_RELATIVE
The lower case version (relative) line to command. |
static String |
PATH_MOVE_RELATIVE
The lower case version (relative) move command. |
static String |
PATH_QUAD_TO_RELATIVE
The lower case version (relative) quadratic interpolation to command. |
static String |
PATH_SMOOTH_CUBIC_TO
The absolute "smooth cubic to" SVG path command (missing from SVGConstants). |
static String |
PATH_SMOOTH_CUBIC_TO_RELATIVE
The lower case version (relative) smooth cubic to command. |
static String |
PATH_SMOOTH_QUAD_TO_RELATIVE
The lower case version (relative) smooth quadratic interpolation to command. |
static String |
PATH_VERTICAL_LINE_TO_RELATIVE
The lower case version (relative) vertical line to command. |
Constructor Summary | |
---|---|
SVGPath()
Empty path constructor. |
|
SVGPath(double x,
double y)
Constructor with initial point. |
|
SVGPath(Iterable<Vector> vectors)
Constructor from a vector collection (e.g. a polygon) |
Method Summary | |
---|---|
private void |
append(String action,
double... ds)
Append an action to the current path. |
SVGPath |
close()
Close the path. |
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 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 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 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 x,
double y)
Move to the given coordinates. |
SVGPath |
moveTo(Vector xy)
Move 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 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 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 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 x,
double y)
Move to the given relative coordinates. |
SVGPath |
relativeMoveTo(Vector xy)
Move 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 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 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 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 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. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private StringBuffer 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
Constructor Detail |
---|
public SVGPath()
public SVGPath(double x, double y)
x
- initial coordinatesy
- initial coordinatespublic SVGPath(Iterable<Vector> vectors)
vectors
- vectorsMethod Detail |
---|
public SVGPath drawTo(double x, double y)
x
- new coordinatesy
- new coordinates
public SVGPath drawTo(Vector xy)
xy
- new coordinates
public boolean isStarted()
public SVGPath lineTo(double x, double y)
x
- new coordinatesy
- new coordinates
public SVGPath lineTo(Vector xy)
xy
- new coordinates
public SVGPath relativeLineTo(double x, double y)
x
- relative coordinatesy
- relative coordinates
public SVGPath relativeLineTo(Vector xy)
xy
- new coordinates
public SVGPath horizontalLineTo(double x)
x
- new coordinates
public SVGPath relativeHorizontalLineTo(double x)
x
- new coordinates
public SVGPath verticalLineTo(double y)
y
- new coordinate
public SVGPath relativeVerticalLineTo(double y)
y
- new coordinate
public SVGPath moveTo(double x, double y)
x
- new coordinatesy
- new coordinates
public SVGPath moveTo(Vector xy)
xy
- new coordinates
public SVGPath relativeMoveTo(double x, double y)
x
- new coordinatesy
- new coordinates
public SVGPath relativeMoveTo(Vector xy)
xy
- new coordinates
public 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 coordinates
public SVGPath cubicTo(Vector c1xy, Vector c2xy, Vector xy)
c1xy
- first control pointc2xy
- second control pointxy
- new coordinates
public 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 coordinates
public SVGPath relativeCubicTo(Vector c1xy, Vector c2xy, Vector xy)
c1xy
- first control pointc2xy
- second control pointxy
- new coordinates
public SVGPath smoothCubicTo(double c2x, double c2y, double x, double y)
c2x
- second control point xc2y
- second control point yx
- new coordinatesy
- new coordinates
public SVGPath smoothCubicTo(Vector c2xy, Vector xy)
c2xy
- second control pointxy
- new coordinates
public SVGPath relativeSmoothCubicTo(double c2x, double c2y, double x, double y)
c2x
- second control point xc2y
- second control point yx
- new coordinatesy
- new coordinates
public SVGPath relativeSmoothCubicTo(Vector c2xy, Vector xy)
c2xy
- second control pointxy
- new coordinates
public SVGPath quadTo(double c1x, double c1y, double x, double y)
c1x
- first control point xc1y
- first control point yx
- new coordinatesy
- new coordinates
public SVGPath quadTo(Vector c1xy, Vector xy)
c1xy
- first control pointxy
- new coordinates
public SVGPath relativeQuadTo(double c1x, double c1y, double x, double y)
c1x
- first control point xc1y
- first control point yx
- new coordinatesy
- new coordinates
public SVGPath relativeQuadTo(Vector c1xy, Vector xy)
c1xy
- first control pointxy
- new coordinates
public SVGPath smoothQuadTo(double x, double y)
x
- new coordinatesy
- new coordinates
public SVGPath smoothQuadTo(Vector xy)
xy
- new coordinates
public SVGPath relativeSmoothQuadTo(double x, double y)
x
- new coordinatesy
- new coordinates
public SVGPath relativeSmoothQuadTo(Vector xy)
xy
- new coordinates
public 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°sp
- sweep flag, if arc will be drawn in positive-angle directionx
- new coordinatesy
- 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°sp
- 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°sp
- sweep flag, if arc will be drawn in positive-angle directionx
- new coordinatesy
- 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°sp
- 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)
public String toString()
toString
in class Object
|
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |