Draws an arbitrary geometric path. Paths are described by a series of pathOperations. Xpath is different to path because it uses the Batik library for rendering and adds a new operation: xarcTo
Operation |
Description |
|---|---|
xmoveTo[x,y] |
adds a point to the path by moving to the specified coordinates (x,y) |
xlineTo[x,y] |
adds a point to the path by drawing a straight line from the current coordinates to the new specified coordinates (x,y) |
xcurveTo[x1,y1,x2,y2,x3,y3] |
adds a curved segment, defined by three new points, to the path by drawing a Bézier curve that intersects both the current coordinates and the specified coordinates (x3,y3), using the specified points (x1,y1) and (x2,y2) as Bézier control points |
xquadTo[x1,y1,x2,y2] |
adds a curved segment, defined by two new points, to the path by drawing a Quadratic curve that intersects both the current coordinates and the specified coordinates (x2,y2), using the specified point (x1,y1) as a quadratic parametric control point |
xhline[x] |
adds a point to the path by drawing an horizontal line to the specified coordinates (x,current.y) |
xvline[y] |
adds a point to the path by drawing a vertical line to the specified coordinates (current.x,y) |
xshapeTo[shape,connect] |
appends the geometry of the specified Shape, shape operation or outline operation to the path, possibly connecting the new geometry to the existing path segments with a line segment |
xclose |
closes the current subpath by drawing a straight line back to the coordinates of the last moveTo |
xarcTo[x,y,rx,ry,angle,sweep,largeArc] |
adds an elliptical arc, defined by two radii (rx,ry), an angle from the x-axis, a flag to choose the large arc or not, a flag to indicate if we increase or decrease the angles and the final point of the arc (x,y) |
The first operation must be a moveTo.
xpath( borderColor: 'darkRed', fill: 'red', borderWidth: 4 ){
xmoveTo( x: 50, y: 10 )
xhline( x: 200 )
xvline( y: 60 )
xarcTo( x: 50, y: 60, rx: 150, ry: 150, angle: 90, sweep: true, largeArc: false )
}
|
