Class SimplePointInAreaLocator
java.lang.Object
org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator
- All Implemented Interfaces:
PointOnGeometryLocator
Computes the location of points
relative to a
Polygonal
Geometry
,
using a simple O(n) algorithm.
The algorithm used reports if a point lies in the interior, exterior, or exactly on the boundary of the Geometry.
Instance methods are provided to implement
the interface SimplePointInAreaLocator
.
However, they provide no performance
advantage over the class methods.
This algorithm is suitable for use in cases where
only a few points will be tested.
If many points will be tested,
IndexedPointInAreaLocator
may provide better performance.
- Version:
- 1.7
-
Constructor Summary
ConstructorsConstructorDescriptionCreate an instance of a point-in-area locator, using the provided areal geometry. -
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
containsPointInPolygon
(Coordinate p, Polygon poly) Determines whether a point lies in aPolygon
.static boolean
isContained
(Coordinate p, Geometry geom) Determines whether a point is contained in aGeometry
, or lies on its boundary.int
locate
(Coordinate p) static int
locate
(Coordinate p, Geometry geom) static int
locatePointInPolygon
(Coordinate p, Polygon poly)
-
Constructor Details
-
SimplePointInAreaLocator
Create an instance of a point-in-area locator, using the provided areal geometry.- Parameters:
geom
- the areal geometry to locate in
-
-
Method Details
-
locate
Determines theLocation
of a point in an arealGeometry
. The return value is one of:Location.INTERIOR
if the point is in the geometry interiorLocation.BOUNDARY
if the point lies exactly on the boundaryLocation.EXTERIOR
if the point is outside the geometry
- Parameters:
p
- the point to testgeom
- the areal geometry to test- Returns:
- the Location of the point in the geometry
-
isContained
Determines whether a point is contained in aGeometry
, or lies on its boundary. This is a convenience method forLocation.EXTERIOR != locate(p, geom)
- Parameters:
p
- the point to testgeom
- the geometry to test- Returns:
- true if the point lies in or on the geometry
-
locatePointInPolygon
Determines theLocation
of a point in aPolygon
. The return value is one of:Location.INTERIOR
if the point is in the geometry interiorLocation.BOUNDARY
if the point lies exactly on the boundaryLocation.EXTERIOR
if the point is outside the geometry
locate(Coordinate, Geometry)
instead.- Parameters:
p
- the point to testpoly
- the geometry to test- Returns:
- the Location of the point in the polygon
-
containsPointInPolygon
Determines whether a point lies in aPolygon
. If the point lies on the polygon boundary it is considered to be inside.- Parameters:
p
- the point to testpoly
- the geometry to test- Returns:
- true if the point lies in or on the polygon
-
locate
Determines theLocation
of a point in an arealGeometry
. The return value is one of:Location.INTERIOR
if the point is in the geometry interiorLocation.BOUNDARY
if the point lies exactly on the boundaryLocation.EXTERIOR
if the point is outside the geometry
- Specified by:
locate
in interfacePointOnGeometryLocator
- Parameters:
p
- the point to test- Returns:
- the Location of the point in the geometry
-