|
void | apply_ro (CoordinateFilter *filter) const override |
|
void | apply_ro (CoordinateSequenceFilter &filter) const override |
|
void | apply_ro (GeometryComponentFilter *filter) const override |
|
void | apply_ro (GeometryFilter *filter) const override |
|
void | apply_rw (CoordinateSequenceFilter &filter) override |
|
void | apply_rw (GeometryComponentFilter *filter) override |
|
void | apply_rw (GeometryFilter *filter) override |
|
void | apply_rw (const CoordinateFilter *filter) override |
|
std::unique_ptr< Geometry > | convexHull () const override |
| Returns the smallest convex Polygon that contains all the points in the Geometry.
|
|
bool | equalsExact (const Geometry *other, double tolerance=0.0) const override |
| Returns true iff the two Geometrys are of the same type and their vertices corresponding by index are equal up to a specified distance tolerance. Geometries are not required to have the same dimemsion; any Z/M values are ignored.
|
|
bool | equalsIdentical (const Geometry *other) const override |
| Returns true if the two geometries are of the same type and their vertices corresponding by index are equal in all dimensions.
|
|
int | getBoundaryDimension () const override |
| Returns the dimension of this Geometrys inherent boundary.
|
|
const CoordinateXY * | getCoordinate () const override |
| Returns a vertex of this Geometry, or NULL if this is the empty geometry.
|
|
uint8_t | getCoordinateDimension () const override |
| Returns the coordinate dimension of this Geometry (2=XY, 3=XYZ or XYM, 4=XYZM).
|
|
Dimension::DimensionType | getDimension () const override |
| Returns the dimension of this Geometry (0=point, 1=line, 2=surface)
|
|
const Envelope * | getEnvelopeInternal () const override |
| Returns the minimum and maximum x and y values in this Geometry, or a null Envelope if this Geometry is empty.
|
|
virtual const Curve * | getExteriorRing () const =0 |
| Returns the exterior ring (shell)
|
|
virtual const Curve * | getInteriorRingN (std::size_t n) const =0 |
| Get nth interior ring (hole)
|
|
double | getLength () const override |
| Returns the perimeter of this Surface.
|
|
virtual size_t | getNumInteriorRing () const =0 |
| Returns number of interior rings (holes)
|
|
size_t | getNumPoints () const override |
| Returns the count of this Geometrys vertices.
|
|
bool | hasM () const override |
|
bool | hasZ () const override |
|
bool | isEmpty () const override |
| Returns whether or not the set of points in this Geometry is empty.
|
|
std::unique_ptr< Geometry > | clone () const |
| Make a deep-copy of this Geometry.
|
|
virtual | ~Geometry () |
| Destroy Geometry and all components.
|
|
const GeometryFactory * | getFactory () const |
| Gets the factory which contains the context in which this geometry was created. More...
|
|
void | setUserData (void *newUserData) |
| A simple scheme for applications to add their own custom data to a Geometry. An example use might be to add an object representing a Coordinate Reference System. More...
|
|
void * | getUserData () const |
| Gets the user data object for this geometry, if any. More...
|
|
int | getSRID () const |
| Returns the ID of the Spatial Reference System used by the Geometry. More...
|
|
virtual void | setSRID (int newSRID) |
| Sets the ID of the Spatial Reference System used by the Geometry.
|
|
const PrecisionModel * | getPrecisionModel () const |
| Get the PrecisionModel used to create this Geometry.
|
|
virtual std::unique_ptr< CoordinateSequence > | getCoordinates () const =0 |
| Returns this Geometry vertices. Caller takes ownership of the returned object.
|
|
virtual bool | isSimple () const |
| Returns false if the Geometry not simple.
|
|
virtual std::string | getGeometryType () const =0 |
| Return a string representation of this Geometry type.
|
|
virtual bool | hasCurvedComponents () const |
| Returns whether the Geometry contains curved components.
|
|
virtual GeometryTypeId | getGeometryTypeId () const =0 |
| Return an integer representation of this Geometry type.
|
|
virtual std::size_t | getNumGeometries () const |
| Returns the number of geometries in this collection, or 1 if this is not a collection. More...
|
|
virtual const Geometry * | getGeometryN (std::size_t) const |
| Returns a pointer to the nth Geometry in this collection (or self if this is not a collection)
|
|
bool | isValid () const |
| Tests the validity of this Geometry . More...
|
|
virtual bool | isRectangle () const |
| Polygon overrides to check for actual rectangle.
|
|
virtual bool | hasDimension (Dimension::DimensionType d) const |
| Checks whether any component of this geometry has dimension d.
|
|
virtual bool | isDimensionStrict (Dimension::DimensionType d) const |
| Checks whether this Geometry consists only of components having dimension d.
|
|
bool | isPuntal () const |
|
bool | isLineal () const |
|
bool | isPolygonal () const |
|
bool | isMixedDimension () const |
|
bool | isMixedDimension (Dimension::DimensionType *baseDim) const |
|
bool | isCollection () const |
|
virtual std::unique_ptr< Geometry > | getBoundary () const =0 |
| Returns the boundary, or an empty geometry of appropriate dimension if this Geometry is empty. More...
|
|
virtual std::unique_ptr< Geometry > | getEnvelope () const |
| Returns this Geometrys bounding box.
|
|
virtual bool | disjoint (const Geometry *other) const |
|
virtual bool | touches (const Geometry *other) const |
| Returns true if the DE-9IM intersection matrix for the two Geometrys is FT*******, F**T***** or F***T****.
|
|
virtual bool | intersects (const Geometry *g) const |
| Returns true if disjoint returns false.
|
|
virtual bool | crosses (const Geometry *g) const |
|
virtual bool | within (const Geometry *g) const |
| Returns true if the DE-9IM intersection matrix for the two Geometrys is T*F**F***.
|
|
virtual bool | contains (const Geometry *g) const |
| Returns true if other.within(this) returns true.
|
|
virtual bool | overlaps (const Geometry *g) const |
| Returns true if the DE-9IM intersection matrix for the two Geometrys is T*T***T** (for two points or two surfaces) 1*T***T** (for two curves).
|
|
bool | relate (const Geometry *g, const std::string &intersectionPattern) const |
| Returns true if the elements in the DE-9IM intersection matrix for the two Geometrys match the elements in intersectionPattern. More...
|
|
bool | relate (const Geometry &g, const std::string &intersectionPattern) const |
|
std::unique_ptr< IntersectionMatrix > | relate (const Geometry *g) const |
| Returns the DE-9IM intersection matrix for the two Geometrys.
|
|
std::unique_ptr< IntersectionMatrix > | relate (const Geometry &g) const |
|
bool | equals (const Geometry *g) const |
| Returns true if the DE-9IM intersection matrix for the two Geometrys is T*F**FFF*.
|
|
bool | covers (const Geometry *g) const |
| Returns true if this geometry covers the specified geometry. More...
|
|
bool | coveredBy (const Geometry *g) const |
| Tests whether this geometry is covered by the specified geometry. More...
|
|
virtual std::string | toString () const |
| Returns the Well-known Text representation of this Geometry.
|
|
virtual std::string | toText () const |
|
std::unique_ptr< Geometry > | buffer (double distance) const |
|
std::unique_ptr< Geometry > | buffer (double distance, int quadrantSegments) const |
| Returns a buffer region around this Geometry having the given width and with a specified number of segments used to approximate curves. More...
|
|
std::unique_ptr< Geometry > | buffer (double distance, int quadrantSegments, int endCapStyle) const |
| Computes a buffer area around this geometry having the given width and with a specified accuracy of approximation for circular arcs, and using a specified end cap style. More...
|
|
std::unique_ptr< Geometry > | reverse () const |
| Computes a new geometry which has all component coordinate sequences in reverse order (opposite orientation) to this one. More...
|
|
std::unique_ptr< Geometry > | intersection (const Geometry *other) const |
| Returns a Geometry representing the points shared by this Geometry and other. More...
|
|
std::unique_ptr< Geometry > | Union (const Geometry *other) const |
| Returns a Geometry representing all the points in this Geometry and other. More...
|
|
Ptr | Union () const |
| Computes the union of all the elements of this geometry. Heterogeneous GeometryCollections are fully supported. More...
|
|
std::unique_ptr< Geometry > | difference (const Geometry *other) const |
| Returns a Geometry representing the points making up this Geometry that do not make up other. More...
|
|
std::unique_ptr< Geometry > | symDifference (const Geometry *other) const |
| Returns a set combining the points in this Geometry not in other, and the points in other not in this Geometry. More...
|
|
template<class T > |
void | applyComponentFilter (T &f) const |
| Apply a filter to each component of this geometry. The filter is expected to provide a .filter(const Geometry*) method. More...
|
|
virtual void | normalize ()=0 |
|
int | compareTo (const Geometry *geom) const |
| Comparator for sorting geometry.
|
|
virtual double | getArea () const |
| Returns the area of this Geometry.
|
|
virtual double | distance (const Geometry *g) const |
|
virtual bool | isWithinDistance (const Geometry *geom, double cDistance) const |
| Tests whether the distance from this Geometry to another is less than or equal to a specified value. More...
|
|
virtual std::unique_ptr< Point > | getCentroid () const |
| Computes the centroid of this Geometry . More...
|
|
virtual bool | getCentroid (CoordinateXY &ret) const |
| Computes the centroid of this Geometry as a Coordinate. More...
|
|
std::unique_ptr< Point > | getInteriorPoint () const |
| Computes an interior point of this Geometry . More...
|
|
void | geometryChanged () |
| Notifies this Geometry that its Coordinates have been changed by an external party (using a CoordinateFilter, for example).
|
|
A Surface is an abstract class representing a Geometry of dimension 2. It is extended by Polygon, which represents a Surface with linear edges, and by CurvePolygon, whose edges may include circular arcs.