21 #ifndef GEOS_OPERATION_ISSIMPLEOP_H
22 #define GEOS_OPERATION_ISSIMPLEOP_H
24 #include <geos/export.h>
25 #include <geos/geom/Coordinate.h>
32 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
38 class BoundaryNodeRule;
43 class MultiLineString;
47 class GeometryCollection;
48 struct CoordinateLessThen;
147 return nonSimpleLocation.get();
210 bool isClosedEndpointsInInterior;
216 std::unique_ptr<geom::Coordinate> nonSimpleLocation;
Definition: MultiPoint.h:53
bool isSimple(const geom::MultiPoint *mp)
A MultiPoint is simple iff it has no repeated points.
const geom::Coordinate * getNonSimpleLocation() const
Gets a coordinate for the location where the geometry fails to be simple (i.e. where it has a non-bou...
Definition: IsSimpleOp.h:145
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:25
IsSimpleOp(const geom::Geometry &geom, const algorithm::BoundaryNodeRule &boundaryNodeRule)
Creates a simplicity checker using a given algorithm::BoundaryNodeRule.
Models a collection of LineStrings.
Definition: MultiLineString.h:51
bool isSimple(const geom::LineString *geom)
Reports whether a geom::LineString is simple.
Strict weak ordering Functor for Coordinate.
Definition: Coordinate.h:149
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:84
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:188
Represents a collection of heterogeneous Geometry objects.
Definition: GeometryCollection.h:55
IsSimpleOp()
Creates a simplicity checker using the default SFS Mod-2 Boundary Node Rule.
IsSimpleOp(const geom::Geometry &geom)
Creates a simplicity checker using the default SFS Mod-2 Boundary Node Rule.
An interface for rules which determine whether node points which are in boundaries of lineal geometry...
Definition: BoundaryNodeRule.h:83
Tests whether a Geometry is simple.
Definition: IsSimpleOp.h:96
bool isSimple()
Tests whether the geometry is simple.
A GeometryGraph is a graph that models a given Geometry.
Definition: GeometryGraph.h:73
bool isSimple(const geom::MultiLineString *geom)
Reports whether a geom::MultiLineString is simple.
Definition: LineString.h:68