4#include "triangulation.hpp"
14 double minX, minY, maxX, maxY;
22 bool contains(
double x,
double y)
const;
54 void insert(
const Triangle &triangle,
const std::vector<Point> &points);
64 std::optional<Triangle>
find(
double x,
double y,
65 const std::vector<Point> &points)
const;
70 static const int MAX_DEPTH = 10;
71 static const int MAX_TRIANGLES = 1500;
73 std::vector<Triangle> triangles;
74 std::unique_ptr<QuadTree> children[4];
A recursive QuadTree structure for spatial indexing of triangles.
Definition quadtree.hpp:39
std::optional< Triangle > find(double x, double y, const std::vector< Point > &points) const
Finds the triangle containing a specific point.
Definition quadtree.cpp:107
void insert(const Triangle &triangle, const std::vector< Point > &points)
Inserts a triangle into the QuadTree.
Definition quadtree.cpp:78
Represents a 2D axis-aligned bounding box.
Definition quadtree.hpp:13
bool intersects(const BoundingBox &other) const
Checks if this bounding box intersects with another.
Definition quadtree.cpp:14
bool contains(double x, double y) const
Checks if a point is within the bounding box.
Definition quadtree.cpp:10
Represents a triangle defined by three indices into a point list.
Definition triangulation.hpp:12