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) // warning C4251: needs to have dll-interface to be used by clients of class 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