com.vividsolutions.jts.operation.buffer
Class OffsetCurveBuilder
java.lang.Object
com.vividsolutions.jts.operation.buffer.OffsetCurveBuilder
public class OffsetCurveBuilder
extends java.lang.Object
Computes the raw offset curve for a
single
Geometry
component (ring, line or point).
A raw offset curve line is not noded -
it may contain self-intersections (and usually will).
The final buffer polygon is computed by forming a topological graph
of all the noded raw curves and tracing outside contours.
The points in the raw curve are rounded to the required precision model.
List | getLineCurve(Coordinate[] inputPts, double distance) - This method handles single points as well as lines.
|
List | getRingCurve(Coordinate[] inputPts, int side, double distance) - This method handles the degenerate cases of single points and lines,
as well as rings.
|
void | setEndCapStyle(int endCapStyle)
|
DEFAULT_QUADRANT_SEGMENTS
public static final int DEFAULT_QUADRANT_SEGMENTS
The default number of facets into which to divide a fillet of 90 degrees.
A value of 8 gives less than 2% max error in the buffer distance.
For a max error of <321%, use QS = 12
OffsetCurveBuilder
public OffsetCurveBuilder(PrecisionModel precisionModel)
OffsetCurveBuilder
public OffsetCurveBuilder(PrecisionModel precisionModel,
int quadrantSegments)
getLineCurve
public List getLineCurve(Coordinate[] inputPts,
double distance)
This method handles single points as well as lines.
Lines are assumed to not be closed (the function will not
fail for closed lines, but will generate superfluous line caps).
getRingCurve
public List getRingCurve(Coordinate[] inputPts,
int side,
double distance)
This method handles the degenerate cases of single points and lines,
as well as rings.
setEndCapStyle
public void setEndCapStyle(int endCapStyle)