public class OverlayNGRobust extends Object
OverlayNG,
providing full robustness by using a series of
increasingly robust (but slower) noding strategies.
The noding strategies used are:
SnappingNoder using an automatically-determined snap tolerance
SnappingNoder.
SnapRoundingNoder is used with a automatically-determined scale factor
intended to preserve input precision while still preventing robustness problems.
TopologyException is thrown.
In practice this is extremely unlikely to occur.
This algorithm relies on each overlay operation execution
throwing a TopologyException if it is unable
to compute the overlay correctly.
Generally this occurs because the noding phase does
not produce a valid noding.
This requires the use of a ValidatingNoder
in order to check the results of using a floating noder.
OverlayNG| Constructor and Description |
|---|
OverlayNGRobust() |
| Modifier and Type | Method and Description |
|---|---|
static Geometry |
overlay(Geometry geom0,
Geometry geom1,
int opCode)
Overlay two geometries, using heuristics to ensure
computation completes correctly.
|
static Geometry |
union(Collection<Geometry> geoms)
Computes the unary union of a collection of geometries using robust computation.
|
static Geometry |
union(Collection<Geometry> geoms,
GeometryFactory geomFact)
Computes the unary union of a collection of geometries using robust computation.
|
static Geometry |
union(Geometry geom)
Computes the unary union of a geometry using robust computation.
|
public static Geometry union(Geometry geom)
geom - the geometry to unionUnaryUnionOppublic static Geometry union(Collection<Geometry> geoms)
geoms - the collection of geometries to unionUnaryUnionOppublic static Geometry union(Collection<Geometry> geoms, GeometryFactory geomFact)
geoms - the collection of geometries to uniongeomFact - the geometry factory to useCopyright © 2024. All rights reserved.