NetTopologySuite
|
Namespaces | |
package | Distance |
package | Locate |
package | Match |
Classes | |
class | AngleUtility |
Utility functions for working with angles. Unless otherwise noted, methods in this class express angles in radians. | |
class | BoundaryNodeRules |
Provides access to static instances of common IBoundaryNodeRules. | |
class | CentralEndpointIntersector |
Computes an approximate intersection of two line segments by taking the most central of the endpoints of the segments. This is effective in cases where the segments are nearly parallel and should intersect at an endpoint. It is also a reasonable strategy for cases where the endpoint of one segment lies on or almost on the interior of another one. Taking the most central endpoint ensures that the computed intersection point lies in the envelope of the segments. Also, by always returning one of the input points, this should result in reducing segment fragmentation. Intended to be used as a last resort for computing ill-conditioned intersection situations which cause other methods to fail. More... | |
class | Centroid |
Computes the centroid of a IGeometry of any dimension. If the geometry is nominally of higher dimension, but has lower effective dimension (i.e. contains only components having zero length or area), the centroid will be computed as for the equivalent lower-dimension geometry. If the input geometry is empty, a null Coordinate is returned. More... | |
class | CentroidArea |
Computes the centroid of an area point. More... | |
class | CentroidLine |
Computes the centroid of a linear point. Algorithm: Compute the average of the midpoints of all line segments weighted by the segment length. More... | |
class | CentroidPoint |
Computes the centroid of a point point. Algorithm: Compute the average of all points. More... | |
class | CGAlgorithms |
Specifies and implements various fundamental Computational Geometric algorithms. The algorithms supplied in this class are robust for double-precision floating point. | |
class | CGAlgorithms3D |
class | CGAlgorithmsDD |
Implements basic computational geometry algorithms using
arithmetic. | |
class | ConvexHull |
Computes the convex hull of a Geometry. The convex hull is the smallest convex Geometry that contains all the points in the input Geometry. Uses the Graham Scan algorithm. More... | |
class | HCoordinate |
Represents a homogeneous coordinate in a 2-D coordinate space. In NTS HCoordinates are used as a clean way of computing intersections between line segments. More... | |
interface | IBoundaryNodeRule |
An interface for rules which determine whether node points which are in boundaries of ILineal geometry components are in the boundary of the parent geometry collection. The SFS specifies a single kind of boundary node rule, the BoundaryNodeRules.Mod2BoundaryNodeRule rule. However, other kinds of Boundary Node Rules are appropriate in specific situations (for instance, linear network topology usually follows the BoundaryNodeRules.EndPointBoundaryNodeRule.) Some JTS operations (such as RelateOp, BoundaryOp and IsSimpleOp) allow the BoundaryNodeRule to be specified, and respect the supplied rule when computing the results of the operation. An example use case for a non-SFS-standard Boundary Node Rule is that of checking that a set of ILineStrings have valid linear network topology, when turn-arounds are represented as closed rings. In this situation, the entry road to the turn-around is only valid when it touches the turn-around ring at the single (common) endpoint. This is equivalent to requiring the set of LineString s to be simple under the BoundaryNodeRules.EndPointBoundaryNodeRule. The SFS-standard BoundaryNodeRules.Mod2BoundaryNodeRule is not sufficient to perform this test, since it states that closed rings have no boundary points. This interface and its subclasses follow the Strategy design pattern. /summary> <author>Martin Davis</author>
| |
class | IndexedPointInAreaLocator |
Determines the Location of ICoordinates relative to a IPolygonal geometry, using indexing for efficiency. /summary> More... | |
class | InteriorPointArea |
Computes a point in the interior of an areal geometry. More... | |
class | InteriorPointLine |
Computes a point in the interior of an linear point. Algorithm: Find an interior vertex which is closest to the centroid of the linestring. If there is no interior vertex, find the endpoint which is closest to the centroid. More... | |
class | InteriorPointPoint |
Computes a point in the interior of an point point. Algorithm: Find a point which is closest to the centroid of the point. More... | |
interface | IPointInAreaLocator |
An interface for classes which determine the Location of points in a IGeometry /summary> author>Martin Davis</author> More... | |
interface | IPointInRing |
An interface for classes which test whether a Coordinate lies inside a ring. More... | |
class | LineIntersector |
A LineIntersector is an algorithm that can both test whether two line segments intersect and compute the intersection point(s) if they do. More... | |
class | MCPointInRing |
Implements IPointInRing using a MonotoneChain s and a BinTree index to increase performance. More... | |
class | MinimumBoundingCircle |
Computes the Minimum Bounding Circle (MBC) for the points in a IGeometry. The MBC is the smallest circle which cover s all the input points (this is also sometimes known as the Smallest Enclosing Circle). This is equivalent to computing the Maximum Diameter of the input point set. More... | |
class | MinimumDiameter |
Computes the minimum diameter of a IGeometry. More... | |
class | NonRobustCGAlgorithms |
Non-robust versions of various fundamental Computational Geometric algorithms, FOR TESTING PURPOSES ONLY!. The non-robustness is due to rounding error in floating point computation. | |
class | NonRobustLineIntersector |
A non-robust version of LineIntersector . More... | |
class | NotRepresentableException |
class | PointLocator |
Computes the topological relationship (Location) of a single point to a Geometry. More... | |
class | RayCrossingCounter |
Counts the number of segments crossed by a horizontal ray extending to the right from a given point, in an incremental fashion. More... | |
class | RectangleLineIntersector |
Computes whether a rectangle intersects line segments. More... | |
class | RobustDeterminant |
Implements an algorithm to compute the sign of a 2x2 determinant for double precision values robustly. It is a direct translation of code developed by Olivier Devillers. More... | |
class | RobustLineIntersector |
A robust version of LineIntersector. More... | |
class | SimplePointInAreaLocator |
Computes the location of points relative to a IPolygonal IGeometry, using a simple O(n) algorithm. This algorithm is suitable for use in cases where only one or a few points will be tested against a given area. More... | |
class | SimplePointInRing |
Tests whether a Coordinate lies inside a ring, using a linear-time algorithm. More... | |
class | SIRtreePointInRing |
Implements PointInRing using a SIRtree index to increase performance. More... | |
Enumerations | |
enum | Orientation { Orientation.None = CGAlgorithms.Collinear, Orientation.Straight = None, Orientation.CounterClockwise = CGAlgorithms.CounterClockwise, Orientation.Left = CounterClockwise, Orientation.Clockwise = CGAlgorithms.Clockwise, Right = Clockwise } |
Angle orientation More... | |
Angle orientation