Table of Contents

Class IntersectionAdder

Namespace
NetTopologySuite.Noding
Assembly
NetTopologySuite.dll

Computes the possible intersections between two line segments in ISegmentStrings and adds them to each string using AddIntersection(LineIntersector, int, int, int).

public class IntersectionAdder : ISegmentIntersector
Inheritance
IntersectionAdder
Implements
Inherited Members

Constructors

IntersectionAdder(LineIntersector)

Initializes a new instance of the IntersectionAdder class.

public IntersectionAdder(LineIntersector li)

Parameters

li LineIntersector

Fields

NumInteriorIntersections

public int NumInteriorIntersections

Field Value

int

NumIntersections

public int NumIntersections

Field Value

int

NumProperIntersections

public int NumProperIntersections

Field Value

int

NumTests

public int NumTests

Field Value

int

Properties

HasInteriorIntersection

An interior intersection is an intersection which is in the interior of some segment.

public bool HasInteriorIntersection { get; }

Property Value

bool

HasIntersection

public bool HasIntersection { get; }

Property Value

bool

HasProperInteriorIntersection

A proper interior intersection is a proper intersection which is not contained in the set of boundary nodes set for this ISegmentIntersector.

public bool HasProperInteriorIntersection { get; }

Property Value

bool

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.

public bool HasProperIntersection { get; }

Property Value

bool

IsDone

Always process all intersections

public bool IsDone { get; }

Property Value

bool

LineIntersector

public LineIntersector LineIntersector { get; }

Property Value

LineIntersector

ProperIntersectionPoint

Returns the proper intersection point, or null if none was found.

public Coordinate ProperIntersectionPoint { get; }

Property Value

Coordinate

Methods

IsAdjacentSegments(int, int)

public static bool IsAdjacentSegments(int i1, int i2)

Parameters

i1 int
i2 int

Returns

bool

ProcessIntersections(ISegmentString, int, ISegmentString, int)

This method is called by clients of the ISegmentIntersector class to process intersections for two segments of the ISegmentString being intersected.
Note that some clients (such as MonotoneChain") may optimize away this call for segment pairs which they have determined do not intersect (e.g. by an disjoint envelope test).

public void ProcessIntersections(ISegmentString e0, int segIndex0, ISegmentString e1, int segIndex1)

Parameters

e0 ISegmentString
segIndex0 int
e1 ISegmentString
segIndex1 int