Class ValidatingNoder

  • All Implemented Interfaces:
    Noder

    public class ValidatingNoder
    extends Object
    implements Noder
    A wrapper for Noders which validates the output arrangement is correctly noded. An arrangement of line segments is fully noded if there is no line segment which has another segment intersecting its interior. If the noding is not correct, a TopologyException is thrown with details of the first invalid location found.
    Author:
    mdavis
    See Also:
    FastNodingValidator
    • Constructor Detail

      • ValidatingNoder

        public ValidatingNoder​(Noder noder)
        Creates a noding validator wrapping the given Noder
        Parameters:
        noder - the Noder to validate
    • Method Detail

      • computeNodes

        public void computeNodes​(Collection segStrings)
        Checks whether the output of the wrapped noder is fully noded. Throws an exception if it is not.
        Specified by:
        computeNodes in interface Noder
        Parameters:
        segStrings - a collection of SegmentStrings to node
        Throws:
        TopologyException
      • getNodedSubstrings

        public 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