NetTopologySuite
|
Namespaces | |
package | Snapround |
Classes | |
class | BasicSegmentString |
Represents a list of contiguous line segments, and supports noding the segments. The line segments are represented by an array of Coordinates. Intended to optimize the noding of contiguous segments by reducing the number of allocated objects. SegmentStrings can carry a context object, which is useful for preserving topological or parentage information. All noded substrings are initialized with the same context object. /summary> More... | |
class | FastNodingValidator |
Validates that a collection of ISegmentStrings is correctly noded. Indexing is used to improve performance. /summary> More... | |
class | FastSegmentSetIntersectionFinder |
Finds if two sets of ISegmentStrings intersect. More... | |
interface | INodableSegmentString |
An interface for classes which support adding nodes to a segment string. /summary> More... | |
interface | INoder |
Computes all intersections between segments in a set of ISegmentStrings. Intersections found are represented as SegmentNodes and added to the ISegmentStrings in which they occur. As a final step in the noding a new set of segment strings split at the nodes may be returned. More... | |
class | InteriorIntersectionFinder |
/summary> More... | |
class | InteriorIntersectionFinderAdder |
Finds interior intersections between line segments in NodedSegmentStrings, and adds them as nodes using NodedSegmentString.AddIntersection(NetTopologySuite.Algorithm.LineIntersector,int,int,int). This class is used primarily for Snap-Rounding. For general-purpose noding, use IntersectionAdder. More... | |
class | IntersectionAdder |
Computes the possible intersections between two line segments in ISegmentStrings and adds them to each string using NodedSegmentString.AddIntersection(NetTopologySuite.Algorithm.LineIntersector,int,int,int). More... | |
class | IntersectionFinderAdder |
Finds interior intersections between line segments in NodedSegmentStrings, and adds them as nodes using NodedSegmentString.AddIntersection(NetTopologySuite.Algorithm.LineIntersector,int,int,int). This class is used primarily for Snap-Rounding. For general-purpose noding, use IntersectionAdder. More... | |
interface | ISegmentIntersector |
Processes possible intersections detected by a INoder. More... | |
interface | ISegmentSetMutualIntersector |
An intersector for the red-blue intersection problem. In this class of line arrangement problem, two disjoint sets of linestrings are intersected. Implementing classes must provide a way of supplying the base set of segment strings to test against (e.g. in the constructor, for straightforward thread-safety). In order to allow optimizing processing, the following condition is assumed to hold for each set:
Implementations can take advantage of this fact to optimize processing (i.e by avoiding testing for intersections between linestrings belonging to the same set). /summary> More... | |
interface | ISegmentString |
An interface for classes which represent a sequence of contiguous line segments. SegmentStrings can carry a context object, which is useful for preserving topological or parentage information. /summary> More... | |
class | IteratedNoder |
Nodes a set of ISegmentStrings completely. The set of ISegmentStrings is fully noded; i.e. noding is repeated until no further intersections are detected. More... | |
class | MCIndexNoder |
Nodes a set of ISegmentStrings using a index based on MonotoneChains and a ISpatialIndex. The ISpatialIndex used should be something that supports envelope (range) queries efficiently (such as a Quadtree "
or <see cref="STRtree{MonotoneChain}" />. More... | |
class | MCIndexSegmentSetMutualIntersector |
Intersects two sets of ISegmentStrings using a index based on MonotoneChains and a ISpatialIndex. Thread-safe and immutable. /summary> More... | |
class | NodedSegmentString |
Represents a list of contiguous line segments, and supports noding the segments. The line segments are represented by an array of Coordinates. Intended to optimize the noding of contiguous segments by reducing the number of allocated objects. NodedSegmentStrings can carry a context object, which is useful for preserving topological or parentage information. All noded substrings are initialized with the same context object. More... | |
class | NodeVertexIterator |
class | NodingValidator |
Validates that a collection of ISegmentStrings is correctly noded. Throws an appropriate exception if an noding error is found. More... | |
class | Octant |
Methods for computing and working with Octants of the Cartesian plane. | |
class | OrientedCoordinateArray |
Allows comparing Coordinate arrays in an orientation-independent way. More... | |
class | ScaledNoder |
Wraps a INoder and transforms its input into the integer domain. This is intended for use with Snap-Rounding noders, which typically are only intended to work in the integer domain. Offsets can be provided to increase the number of digits of available precision. More... | |
class | SegmentIntersectionDetector |
Detects and records an intersection between two ISegmentStrings, if one exists. Only a single intersection is recorded. /summary> More... | |
class | SegmentNode |
Represents an intersection point between two ISegmentStrings. More... | |
class | SegmentNodeList |
A list of the SegmentNodes present along a noded ISegmentString. More... | |
class | SegmentPointComparator |
Implements a robust method of comparing the relative position of two points along the same segment. The coordinates are assumed to lie "near" the segment. This means that this algorithm will only return correct results if the input coordinates have the same precision and correspond to rounded values of exact coordinates lying on the segment. More... | |
class | SegmentStringDissolver |
Dissolves a noded collection of ISegmentStrings to produce a set of merged linework with unique segments. More... | |
class | SegmentStringUtil |
Utility methods for processing ISegmentStrings /summary> <author>Martin Davis</author> More... | |
class | SimpleNoder |
Nodes a set of ISegmentStrings by performing a brute-force comparison of every segment to every other one. This has n^2 performance, so is too slow for use on large numbers of segments. More... | |
class | SimpleSegmentSetMutualIntersector |
Intersects two sets of ISegmentStrings using brute-force comparison. More... | |
class | SinglePassNoder |
Base class for INoders which make a single pass to find intersections. This allows using a custom ISegmentIntersector (which for instance may simply identify intersections, rather than insert them). More... | |
Enumerations | |
enum | Octants { Octants.Null = -1, Octants.Zero = 0, Octants.One = 1, Octants.Two = 2, Octants.Three = 3, Octants.Four = 4, Octants.Five = 5, Octants.Six = 6, Octants.Seven = 7 } |
Octants in the Cartesian plane. Octants are numbered as follows: More... | |