Class LineStringSnapper



  • public class LineStringSnapper
    extends Object
    Snaps the vertices and segments of a LineString to a set of target snap vertices. A snap distance tolerance is used to control where snapping is performed.

    The implementation handles empty geometry and empty snap vertex sets.

    • Constructor Detail

      • LineStringSnapper

        public LineStringSnapper(LineString srcLine,
                                 double snapTolerance)
        Creates a new snapper using the points in the given LineString as source snap points.
        Parameters:
        srcLine - a LineString to snap (may be empty)
        snapTolerance - the snap tolerance to use
      • LineStringSnapper

        public LineStringSnapper(Coordinate[] srcPts,
                                 double snapTolerance)
        Creates a new snapper using the given points as source points to be snapped.
        Parameters:
        srcPts - the points to snap
        snapTolerance - the snap tolerance to use
    • Method Detail

      • setAllowSnappingToSourceVertices

        public void setAllowSnappingToSourceVertices(boolean allowSnappingToSourceVertices)
      • snapTo

        public Coordinate[] snapTo(Coordinate[] snapPts)
        Snaps the vertices and segments of the source LineString to the given set of snap vertices.
        Parameters:
        snapPts - the vertices to snap to
        Returns:
        a list of the snapped points