Class SegmentExtractingNoder

  • All Implemented Interfaces:
    Noder

    public class SegmentExtractingNoder
    extends java.lang.Object
    implements Noder
    A noder which extracts all line segments as SegmentStrings. This enables fast overlay of geometries which are known to be already fully noded. In particular, it provides fast union of polygonal and linear coverages. Unioning a noded set of lines is an effective way to perform line merging and line dissolving.

    No precision reduction is carried out. If that is required, another noder must be used (such as a snap-rounding noder), or the input must be precision-reduced beforehand.

    Author:
    Martin Davis
    • Constructor Detail

      • SegmentExtractingNoder

        public SegmentExtractingNoder()
        Creates a new segment-extracting noder.
    • Method Detail

      • computeNodes

        public void computeNodes​(java.util.Collection segStrings)
        Description copied from interface: Noder
        Computes the noding for a collection of SegmentStrings. Some Noders may add all these nodes to the input SegmentStrings; others may only add some or none at all.
        Specified by:
        computeNodes in interface Noder
        Parameters:
        segStrings - a collection of SegmentStrings to node
      • getNodedSubstrings

        public java.util.Collection getNodedSubstrings()
        Description copied from interface: Noder
        Returns a Collection of fully noded SegmentStrings. The SegmentStrings have the same context as their parent.
        Specified by:
        getNodedSubstrings in interface Noder
        Returns:
        a Collection of SegmentStrings