18#include <geos/geom/Point.h>
19#include <geos/geom/Polygon.h>
20#include <geos/geom/LineString.h>
22#include <geos/export.h>
36class CoordinateArraySequence;
40class PointOnGeometryLocator;
91 std::unique_ptr<Geometry> geomNonPoint;
93 std::unique_ptr<PointOnGeometryLocator> locator;
97 std::unique_ptr<PointOnGeometryLocator> createLocator(
const Geometry* geomNonPoint);
99 std::unique_ptr<Geometry> prepareNonPoint(
const Geometry* geomInput);
107 std::unique_ptr<Geometry> createPointResult(std::vector<std::unique_ptr<Point>>& points)
const;
111 std::vector<std::unique_ptr<Point>> createPoints(std::set<Coordinate>& coords)
const;
113 bool hasLocation(
bool isCovered,
const Coordinate& coord)
const;
115 std::unique_ptr<Geometry> copyNonPoint()
const;
117 std::unique_ptr<CoordinateArraySequence> extractCoordinates(
const Geometry* points,
const PrecisionModel* pm)
const;
119 std::vector<std::unique_ptr<Polygon>> extractPolygons(
const Geometry* geom)
const;
121 std::vector<std::unique_ptr<LineString>> extractLines(
const Geometry* geom)
const;
131 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 default implementation of CoordinateSequence.
Definition: CoordinateArraySequence.h:35
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:58
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition: GeometryFactory.h:66
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:186
Specifies the precision model of the Coordinate in a Geometry.
Definition: PrecisionModel.h:90
Definition: OverlayMixedPoints.h:79
Basic namespace for all GEOS functionalities.
Definition: geos.h:39