Class SegmentIntersector
Computes the intersection of line segments, and adds the intersection to the edges containing the segments.
Inherited Members
Namespace: NetTopologySuite.GeometriesGraph.Index
Assembly: NetTopologySuite.dll
Syntax
public class SegmentIntersector
Constructors
| Improve this Doc View SourceSegmentIntersector(LineIntersector, Boolean, Boolean)
Declaration
public SegmentIntersector(LineIntersector li, bool includeProper, bool recordIsolated)
Parameters
Type | Name | Description |
---|---|---|
LineIntersector | li | |
Boolean | includeProper | |
Boolean | recordIsolated |
Fields
| Improve this Doc View SourceNumTests
Testing only.
Declaration
public int NumTests
Field Value
Type | Description |
---|---|
Int32 |
Properties
| Improve this Doc View SourceHasIntersection
Declaration
public bool HasIntersection { get; }
Property Value
Type | Description |
---|---|
Boolean |
HasProperInteriorIntersection
A proper interior intersection is a proper intersection which is not contained in the set of boundary nodes set for this SegmentIntersector.
Declaration
public bool HasProperInteriorIntersection { get; }
Property Value
Type | Description |
---|---|
Boolean | Indicates a proper interior intersection |
HasProperIntersection
A proper intersection is an intersection which is interior to at least two line segments. Note that a proper intersection is not necessarily in the interior of the entire Geometry, since another edge may have an endpoint equal to the intersection, which according to SFS semantics can result in the point being on the Boundary of the Geometry.
Declaration
public bool HasProperIntersection { get; }
Property Value
Type | Description |
---|---|
Boolean | Indicates a proper intersection with an interior to at least two line segments |
IsDone
Gets a value indicating that the segment intersector is finished.
Declaration
public bool IsDone { get; }
Property Value
Type | Description |
---|---|
Boolean |
Remarks
Always returns false
IsDoneIfProperInt
Sets a flag if the segment intersector is done when a proper intersection has been found.
Declaration
[Obsolete("Not used anymore, will be removed in a later version")]
public bool IsDoneIfProperInt { set; }
Property Value
Type | Description |
---|---|
Boolean |
Remarks
Has no effect anymore.
ProperIntersectionPoint
Declaration
public Coordinate ProperIntersectionPoint { get; }
Property Value
Type | Description |
---|---|
Coordinate | The proper intersection point, or |
Methods
| Improve this Doc View SourceAddIntersections(Edge, Int32, Edge, Int32)
This method is called by clients of the EdgeIntersector class to test for and add intersections for two segments of the edges being intersected. Note that clients (such as MonotoneChainEdges) may choose not to intersect certain pairs of segments for efficiency reasons.
Declaration
public void AddIntersections(Edge e0, int segIndex0, Edge e1, int segIndex1)
Parameters
Type | Name | Description |
---|---|---|
Edge | e0 | |
Int32 | segIndex0 | |
Edge | e1 | |
Int32 | segIndex1 |
IsAdjacentSegments(Int32, Int32)
Declaration
public static bool IsAdjacentSegments(int i1, int i2)
Parameters
Type | Name | Description |
---|---|---|
Int32 | i1 | |
Int32 | i2 |
Returns
Type | Description |
---|---|
Boolean |
SetBoundaryNodes(IList<Node>, IList<Node>)
Declaration
public void SetBoundaryNodes(IList<Node> bdyNodes0, IList<Node> bdyNodes1)
Parameters
Type | Name | Description |
---|---|---|
IList<Node> | bdyNodes0 | |
IList<Node> | bdyNodes1 |