Class MonotoneChainEdge
MonotoneChains are a way of partitioning the segments of an edge to
allow for fast searching of intersections.
They have the following properties:
the segments within a monotone chain will never intersect each other, and
the envelope of any contiguous subset of the segments in a monotone chain
is simply the envelope of the endpoints of the subset.
Property 1 means that there is no need to test pairs of segments from within
the same monotone chain for intersection.
Property 2 allows
binary search to be used to find the intersection points of two monotone chains.
For many types of real-world data, these properties eliminate a large number of
segment comparisons, producing substantial speed gains.
Inheritance
MonotoneChainEdge
Assembly: NetTopologySuite.dll
Syntax
public class MonotoneChainEdge
Constructors
|
Improve this Doc
View Source
MonotoneChainEdge(Edge)
Declaration
public MonotoneChainEdge(Edge e)
Parameters
Type |
Name |
Description |
Edge |
e |
|
Properties
|
Improve this Doc
View Source
Coordinates
Declaration
public Coordinate[] Coordinates { get; }
Property Value
|
Improve this Doc
View Source
StartIndexes
Declaration
public int[] StartIndexes { get; }
Property Value
Methods
|
Improve this Doc
View Source
ComputeIntersects(MonotoneChainEdge, SegmentIntersector)
Declaration
public void ComputeIntersects(MonotoneChainEdge mce, SegmentIntersector si)
Parameters
|
Improve this Doc
View Source
ComputeIntersectsForChain(Int32, MonotoneChainEdge, Int32, SegmentIntersector)
Declaration
public void ComputeIntersectsForChain(int chainIndex0, MonotoneChainEdge mce, int chainIndex1, SegmentIntersector si)
Parameters
|
Improve this Doc
View Source
GetMaxX(Int32)
Declaration
public double GetMaxX(int chainIndex)
Parameters
Type |
Name |
Description |
Int32 |
chainIndex |
|
Returns
|
Improve this Doc
View Source
GetMinX(Int32)
Declaration
public double GetMinX(int chainIndex)
Parameters
Type |
Name |
Description |
Int32 |
chainIndex |
|
Returns