23#include <geos/geom/prep/BasicPreparedGeometry.h>
24#include <geos/noding/SegmentString.h>
25#include <geos/operation/distance/IndexedFacetDistance.h>
51class PreparedPolygon :
public BasicPreparedGeometry {
54 mutable std::unique_ptr<noding::FastSegmentSetIntersectionFinder> segIntFinder;
55 mutable std::unique_ptr<algorithm::locate::PointOnGeometryLocator> ptOnGeomLoc;
56 mutable std::unique_ptr<algorithm::locate::PointOnGeometryLocator> indexedPtOnGeomLoc;
57 mutable noding::SegmentString::ConstVect segStrings;
58 mutable std::unique_ptr<operation::distance::IndexedFacetDistance> indexedDistance;
63 ~PreparedPolygon()
override;
An interface for classes which determine the Location of points in Polygon or MultiPolygon geometries...
Definition PointOnGeometryLocator.h:36
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition Geometry.h:197
double distance(const geom::Geometry *g) const override
bool intersects(const geom::Geometry *g) const override
bool contains(const geom::Geometry *g) const override
bool covers(const geom::Geometry *g) const override
bool containsProperly(const geom::Geometry *g) const override
bool isWithinDistance(const geom::Geometry *g, double d) const override
Finds if two sets of SegmentStrings intersect.
Definition FastSegmentSetIntersectionFinder.h:50
Computes the distance between the facets (segments and vertices) of two Geometrys using a Branch-and-...
Definition IndexedFacetDistance.h:46
Classes which determine the Location of points in geometries.
Definition IndexedPointInAreaLocator.h:40
Contains classes and interfaces implementing fundamental computational geometry algorithms.
Definition Angle.h:32
Contains classes and interfaces implementing algorithms that optimize the performance of repeated cal...
Definition AbstractPreparedPolygonContains.h:30
Classes to compute nodings for arrangements of line segments and line segment sequences.
Definition InvalidSegmentDetector.h:25
Basic namespace for all GEOS functionalities.
Definition geos.h:39