Search Results for

    Show / Hide Table of Contents

    Class NodingIntersectionFinder

    Finds non-noded intersections in a set of {@link SegmentString}s, if any exist.

    Non-noded intersections include:

    The finder can be limited to finding only interior intersections by setting InteriorIntersectionsOnly.

    By default only the first intersection is found, but all can be found by setting FindAllIntersections.
    Inheritance
    object
    NodingIntersectionFinder
    Implements
    ISegmentIntersector
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: NetTopologySuite.Noding
    Assembly: NetTopologySuite.dll
    Syntax
    public class NodingIntersectionFinder : ISegmentIntersector

    Constructors

    | Edit this page View Source

    NodingIntersectionFinder(LineIntersector)

    Creates an intersection finder which finds an interior intersection if one exists

    Declaration
    public NodingIntersectionFinder(LineIntersector li)
    Parameters
    Type Name Description
    LineIntersector li

    the LineIntersector to use

    Properties

    | Edit this page View Source

    CheckEndSegmentsOnly

    Gets/Sets whether only end segments should be tested for intersection. This is a performance optimization that may be used if the segments have been previously noded by an appropriate algorithm. It may be known that any potential noding failures will occur only in end segments.

    Declaration
    public bool CheckEndSegmentsOnly { get; set; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    Count

    Gets the count of intersections found.

    Declaration
    public int Count { get; }
    Property Value
    Type Description
    int

    The intersection count.

    | Edit this page View Source

    FindAllIntersections

    Gets/Sets whether all intersections should be computed. When this is false (the default value), the value of IsDone is true after the first intersection is found. Default is false.

    Declaration
    public bool FindAllIntersections { get; set; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    HasIntersection

    Tests whether an intersection was found.

    Declaration
    public bool HasIntersection { get; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    InteriorIntersection

    Gets the computed location of the intersection. Due to round-off, the location may not be exact.

    Declaration
    [Obsolete("Renamed to just Intersection")]
    public Coordinate InteriorIntersection { get; }
    Property Value
    Type Description
    Coordinate
    | Edit this page View Source

    InteriorIntersectionsOnly

    Gets or sets a value indicating whether only interior (proper) intersections will be found.

    Declaration
    public bool InteriorIntersectionsOnly { get; set; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    Intersection

    Gets the computed location of the intersection. Due to round-off, the location may not be exact.

    Declaration
    public Coordinate Intersection { get; }
    Property Value
    Type Description
    Coordinate
    | Edit this page View Source

    IntersectionSegments

    Gets the endpoints of the intersecting segments.

    Declaration
    public Coordinate[] IntersectionSegments { get; }
    Property Value
    Type Description
    Coordinate[]
    | Edit this page View Source

    Intersections

    Gets the intersections found.

    Declaration
    public ReadOnlyCollection<Coordinate> Intersections { get; }
    Property Value
    Type Description
    ReadOnlyCollection<Coordinate>

    A list of Coordinate.

    | Edit this page View Source

    IsDone

    Declaration
    public bool IsDone { get; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    KeepIntersections

    Gets/Sets whether intersection points are recorded. If the only need is to count intersection points, this can be set to false. Default is true.

    Declaration
    public bool KeepIntersections { get; set; }
    Property Value
    Type Description
    bool

    Methods

    | Edit this page View Source

    CreateAllIntersectionsFinder(LineIntersector)

    Creates a finder which tests if there is at least one intersection. The intersections are recorded for later inspection.

    Declaration
    public static NodingIntersectionFinder CreateAllIntersectionsFinder(LineIntersector li)
    Parameters
    Type Name Description
    LineIntersector li

    A line intersector.

    Returns
    Type Description
    NodingIntersectionFinder

    A finder which finds all intersections.

    | Edit this page View Source

    CreateAnyIntersectionFinder(LineIntersector)

    Creates a finder which tests if there is at least one intersection. Uses short-circuiting for efficient performance. The intersection found is recorded.

    Declaration
    public static NodingIntersectionFinder CreateAnyIntersectionFinder(LineIntersector li)
    Parameters
    Type Name Description
    LineIntersector li

    A line intersector.

    Returns
    Type Description
    NodingIntersectionFinder

    A finder which tests if there is at least one intersection.

    | Edit this page View Source

    CreateInteriorIntersectionCounter(LineIntersector)

    Creates a finder which counts all interior intersections. The intersections are note recorded to reduce memory usage.

    Declaration
    public static NodingIntersectionFinder CreateInteriorIntersectionCounter(LineIntersector li)
    Parameters
    Type Name Description
    LineIntersector li

    A line intersector.

    Returns
    Type Description
    NodingIntersectionFinder

    A finder which counts all interior intersections.

    | Edit this page View Source

    CreateInteriorIntersectionsFinder(LineIntersector)

    Creates a finder which finds all interior intersections. The intersections are recorded for later inspection.

    Declaration
    public static NodingIntersectionFinder CreateInteriorIntersectionsFinder(LineIntersector li)
    Parameters
    Type Name Description
    LineIntersector li

    A line intersector

    Returns
    Type Description
    NodingIntersectionFinder

    A finder which finds all interior intersections.

    | Edit this page View Source

    CreateIntersectionCounter(LineIntersector)

    Creates a finder which counts all intersections. The intersections are note recorded to reduce memory usage.

    Declaration
    public static NodingIntersectionFinder CreateIntersectionCounter(LineIntersector li)
    Parameters
    Type Name Description
    LineIntersector li

    A line intersector.

    Returns
    Type Description
    NodingIntersectionFinder

    A finder which counts all intersections.

    | Edit this page View Source

    ProcessIntersections(ISegmentString, int, ISegmentString, int)

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

    Declaration
    public void ProcessIntersections(ISegmentString e0, int segIndex0, ISegmentString e1, int segIndex1)
    Parameters
    Type Name Description
    ISegmentString e0
    int segIndex0
    ISegmentString e1
    int segIndex1

    Implements

    ISegmentIntersector
    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX