18#include <geos/geom/Point.h>
19#include <geos/geom/Polygon.h>
20#include <geos/geom/LineString.h>
22#include <geos/export.h>
36class CoordinateSequence;
40class PointOnGeometryLocator;
80 using Curve = geos::geom::Curve;
85 using CoordinateXY = geos::geom::CoordinateXY;
105 std::unique_ptr<Geometry> geomNonPoint;
107 std::unique_ptr<PointOnGeometryLocator> locator;
111 std::unique_ptr<PointOnGeometryLocator> createLocator(
const Geometry* geomNonPoint);
113 std::unique_ptr<Geometry> prepareNonPoint(
const Geometry* geomInput);
115 std::unique_ptr<Geometry> computeIntersection(
const CoordinateSequence* coords)
const;
121 std::unique_ptr<Geometry> createPointResult(std::vector<std::unique_ptr<Point>>& points)
const;
123 std::vector<std::unique_ptr<Point>> findPoints(
bool isCovered,
const CoordinateSequence* coords)
const;
125 std::vector<std::unique_ptr<Point>> createPoints(
const CoordinateSequence& coords)
const;
127 bool hasLocation(
bool isCovered,
const CoordinateXY& coord)
const;
129 std::unique_ptr<Geometry> copyNonPoint()
const;
131 static std::unique_ptr<CoordinateSequence> extractCoordinates(
const Geometry* points,
const PrecisionModel* pm);
133 static std::vector<std::unique_ptr<Surface>> extractPolygons(
const Geometry* geom);
135 static std::vector<std::unique_ptr<Curve>> extractLines(
const Geometry* geom);
145 std::unique_ptr<Geometry> getResult();
An interface for classes which determine the Location of points in Polygon or MultiPolygon geometries...
Definition PointOnGeometryLocator.h:36
The internal representation of a list of coordinates inside a Geometry.
Definition CoordinateSequence.h:56
Coordinate is the lightweight class used to store coordinates.
Definition Coordinate.h:220
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition GeometryFactory.h:72
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition Geometry.h:200
Definition LineString.h:66
Represents a linear polygon, which may include holes.
Definition Polygon.h:61
Specifies the precision model of the Coordinate in a Geometry.
Definition PrecisionModel.h:87
Computes all intersections between segments in a set of SegmentString.
Definition Noder.h:45
Definition OverlayMixedPoints.h:79
Basic namespace for all GEOS functionalities.
Definition geos.h:38