17 #include <geos/export.h>
18 #include <geos/geom/Envelope.h>
19 #include <geos/geom/Coordinate.h>
20 #include <geos/algorithm/LineIntersector.h>
21 #include <geos/noding/snapround/HotPixel.h>
22 #include <geos/geom/PrecisionModel.h>
23 #include <geos/util/IllegalArgumentException.h>
24 #include <geos/io/WKTWriter.h>
25 #include <geos/index/kdtree/KdTree.h>
26 #include <geos/index/kdtree/KdNodeVisitor.h>
35 #pragma warning(disable: 4251)
41 class LineIntersector;
59 class GEOS_DLL HotPixelIndex {
64 const geom::PrecisionModel* pm;
66 std::unique_ptr<geos::index::kdtree::KdTree> index;
67 std::deque<HotPixel> hotPixelQue;
70 geom::Coordinate
round(
const geom::Coordinate& c);
71 HotPixel* find(
const geom::Coordinate& pixelPt);
75 HotPixelIndex(
const geom::PrecisionModel* p_pm);
76 HotPixel* add(
const geom::Coordinate& pt);
77 void add(
const geom::CoordinateSequence* pts);
78 void add(
const std::vector<geom::Coordinate>& pts);
79 void addNodes(
const geom::CoordinateSequence* pts);
80 void addNodes(
const std::vector<geom::Coordinate>& pts);
87 void query(
const geom::Coordinate& p0,
const geom::Coordinate& p1,
88 index::kdtree::KdNodeVisitor& visitor);
double round(double val)
Definition: math.h:36
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:26