19 #ifndef GEOS_IDX_QUADTREE_NODE_H 20 #define GEOS_IDX_QUADTREE_NODE_H 22 #include <geos/export.h> 23 #include <geos/index/quadtree/NodeBase.h> 24 #include <geos/geom/Coordinate.h> 25 #include <geos/geom/Envelope.h> 32 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class 60 std::unique_ptr<geom::Envelope> env;
72 Node* getSubnode(
int index);
74 std::unique_ptr<Node> createSubnode(
int index);
81 return env->intersects(searchEnv);
87 static std::unique_ptr<Node> createNode(
const geom::Envelope& env);
94 static std::unique_ptr<Node> createExpanded(std::unique_ptr<Node> node,
97 Node(std::unique_ptr<geom::Envelope> nenv,
int nlevel)
129 void insertNode(std::unique_ptr<Node> node);
131 std::string toString()
const override;
143 #endif // GEOS_IDX_QUADTREE_NODE_H An Envelope defines a rectangulare region of the 2D coordinate plane.
Definition: Envelope.h:58
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:60
The base class for nodes in a Quadtree.
Definition: quadtree/NodeBase.h:55
double getMaxX() const
Returns the Envelope maximum x-value. min x > max x indicates that this is a null Envelope.
double getMinX() const
Returns the Envelope minimum x-value. min x > max x indicates that this is a null Envelope.
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:25
double getMaxY() const
Returns the Envelope maximum y-value. min y > max y indicates that this is a null Envelope.
double getMinY() const
Returns the Envelope minimum y-value. min y > max y indicates that this is a null Envelope.
geom::Envelope * getEnvelope()
Definition: index/quadtree/Node.h:111
Represents a node of a Quadtree.
Definition: index/quadtree/Node.h:55