public class GeometrySnapper
extends java.lang.Object
Geometry
to another Geometry's vertices.
Improves robustness for overlay operations, by eliminating
nearly parallel edges (which cause problems during noding and intersection calculation).Constructor and Description |
---|
GeometrySnapper(Geometry srcGeom)
Creates a new snapper acting on the given geometry
|
Modifier and Type | Method and Description |
---|---|
static double |
computeOverlaySnapTolerance(Geometry g)
Estimates the snap tolerance for a Geometry, taking into account its precision model.
|
static double |
computeOverlaySnapTolerance(Geometry g0,
Geometry g1) |
static double |
computeSizeBasedSnapTolerance(Geometry g) |
Coordinate[] |
extractTargetCoordinates(Geometry g) |
static Geometry[] |
snap(Geometry g0,
Geometry g1,
double snapTolerance)
Snaps two geometries together with a given tolerance.
|
Geometry |
snapTo(Geometry snapGeom,
double snapTolerance)
Snaps the vertices in the component
LineString s
of the source geometry
to the vertices of the given snap geometry. |
public GeometrySnapper(Geometry srcGeom)
srcGeom
- the geometry to snappublic static double computeOverlaySnapTolerance(Geometry g)
g
- a Geometrypublic static double computeSizeBasedSnapTolerance(Geometry g)
public static double computeOverlaySnapTolerance(Geometry g0, Geometry g1)
public static Geometry[] snap(Geometry g0, Geometry g1, double snapTolerance)
g0
- a geometry to snapg1
- a geometry to snapsnapTolerance
- the tolerance to usepublic Geometry snapTo(Geometry snapGeom, double snapTolerance)
LineString
s
of the source geometry
to the vertices of the given snap geometry.snapGeom
- a geometry to snap the source topublic Coordinate[] extractTargetCoordinates(Geometry g)