21 #include <geos/export.h> 23 #include <geos/geom/Coordinate.h> 24 #include <geos/geom/Envelope.h> 25 #include <geos/noding/snapround/HotPixelIndex.h> 26 #include <geos/noding/Noder.h> 36 class NodedSegmentString;
78 static constexpr
int INTERSECTION_NEARNESS_FACTOR = 100;
82 noding::snapround::HotPixelIndex pixelIndex;
83 std::vector<SegmentString*> snappedResult;
86 void snapRound(std::vector<SegmentString*>& inputSegStrings, std::vector<SegmentString*>& resultNodedSegments);
95 void addVertexPixels(std::vector<SegmentString*>& segStrings);
102 void addIntersectionPixels(std::vector<SegmentString*>& segStrings);
120 void computeSnaps(
const std::vector<SegmentString*>& segStrings, std::vector<SegmentString*>& snapped);
131 void snapSegment(
const geom::CoordinateXY& p0,
const geom::CoordinateXY& p1,
NodedSegmentString* ss, std::size_t segIndex);
139 void snapVertexNode(
const geom::CoordinateXY& p0,
NodedSegmentString* ss, std::size_t segIndex);
151 std::vector<SegmentString*>* getNodedSubstrings()
const override;
157 void computeNodes(std::vector<SegmentString*>* inputSegStrings)
override;
Represents a list of contiguous line segments, and supports noding the segments.
Definition: NodedSegmentString.h:58
Specifies the precision model of the Coordinate in a Geometry.
Definition: PrecisionModel.h:90
Definition: SnapRoundingNoder.h:71
Basic namespace for all GEOS functionalities.
Definition: Angle.h:25
Computes all intersections between segments in a set of SegmentString.
Definition: Noder.h:46
The internal representation of a list of coordinates inside a Geometry.
Definition: CoordinateSequence.h:56