# OSGeo::FDO::Spatial::SpatialUtility Class Reference
[OSGeo::FDO::Spatial]

List of all members.

## Detailed Description

A Spatial utility class.

()

## Static Public Member Functions
static OSGeo::FDO::Geometry::IGeometry * | ApproximateGeometryWithLineStrings (OSGeo::FDO::Geometry::IGeometry *geometry, System::Double maxSpacing, System::Double maxOffset, OSGeo::FDO::Geometry::GeometryFactoryAbstract *geometryFactory)
| Approximates a geometry, which may contain parametric curve components, with a geometry that only contains straight, linear components.
static System::Double | ComputeLinearRingArea (OSGeo::FDO::Geometry::ILinearRing *ring)
| Computes the area of a ring.
static System::Double | ComputeLinearRingLength (OSGeo::FDO::Geometry::ILinearRing *ring)
| Computes the length (perimeter) of a ring.
static OSGeo::FDO::Geometry::IGeometry * | CreateGeometryFromRings (OSGeo::FDO::Geometry::LinearRingCollection *rings, System::Boolean relateRings)
| Creates a Polygon or a MultiPolygon from a collection of rings.
static System::Boolean | Evaluate (OSGeo::FDO::Geometry::IGeometry *g1, OSGeo::FDO::Filter::SpatialOperations op, OSGeo::FDO::Geometry::IGeometry *g2)
| Evaluates if two FDO geometric objects spatially interact with each other based on a user supplied spatial operator. For example: Contains, Crosses, Disjoint, Equals, Intersects, Overlaps, Touches, Within, CoveredBy, Inside, EnvelopeIntersects.
static System::Void | GetExtents (System::Byte bytes[], System::Double *minX, System::Double *minY, System::Double *minZ, System::Double *maxX, System::Double *maxY, System::Double *maxZ)
| Gets the extents of a geometry contained in a byte array.
static System::Void | GetExtents (System::Byte bytes[], System::Double *minX, System::Double *minY, System::Double *maxX, System::Double *maxY)
| Gets the extents of a geometry contained in a byte array.
static System::Boolean | IsCircularArcValid (OSGeo::FDO::Geometry::ICircularArcSegment *arc, System::Double tolerance)
| Checks the geometric validity of a circular arc. E.g. Checks whether the points describing the arc are collinear within a tolerance.
static System::Boolean | PointInPolygon (OSGeo::FDO::Geometry::IPolygon *polygon, System::Double coordinateX, System::Double coordinateY)
| Tests whether a point is within a polygon (including its islands) or not.
static System::Boolean | PointInPolygon (OSGeo::FDO::Geometry::IPolygon *polygon, System::Double coordinateX, System::Double coordinateY, System::Boolean *isOnExtBoundary)
| Tests whether a point is within a polygon (including its islands) or not.
static System::Boolean | PointInPolygon (OSGeo::FDO::Geometry::IPolygon *polygon, System::Double coordinateX, System::Double coordinateY, System::Boolean *isOnExtBoundary, System::Boolean *isOnInBoundary)
| Tests whether a point is within a polygon (including its islands) or not.
static System::Boolean | PointInRing (OSGeo::FDO::Geometry::ILinearRing *ring, System::Double coordinateX, System::Double coordinateY)
| Tests whether a point is within a ring or not.
static System::Boolean | PointInRing (OSGeo::FDO::Geometry::ILinearRing *ring, System::Double coordinateX, System::Double coordinateY, System::Boolean *isOnBoundary)
| Tests whether a point is within a ring or not.
static OSGeo::FDO::Geometry::IGeometry * | TesselateCurve (OSGeo::FDO::Geometry::IGeometry *curve)
| Tesselates a curve geometry into a set of line strings that approximate the curve geometry.
static OSGeo::FDO::Spatial::SpatialGeometryValidity | ValidateGeometryByType (OSGeo::FDO::Geometry::IGeometry *geometry, OSGeo::FDO::Common::GeometryType geometryTypes[], OSGeo::FDO::Common::GeometryComponentType geometryComponentTypes[], System::Int32 dimensionality)
| Tests whether a geometry can be supported using the given types and dimensionality.