|
| Quadtree ()=default |
| Default constructor. More...
|
|
| Quadtree (const Quadtree &)=default |
| Default copy constructor. More...
|
|
| Quadtree (Quadtree &&) noexcept=default |
| Default move constructor. More...
|
|
virtual | ~Quadtree ()=default |
| Default virtual destructor. More...
|
|
Quadtree & | operator= (const Quadtree &)=default |
| Default copy assignment operator. More...
|
|
Quadtree & | operator= (Quadtree &&) noexcept=default |
| Default move assignment operator. More...
|
|
void | Build (const std::vector< T > &items, const BoundingBox2D &bound, const BoxIntersectionTestFunc2< T > &testFunc, size_t maxDepth) |
|
void | Clear () |
| Clears all the contents of this instance. More...
|
|
NearestNeighborQueryResult2< T > | Nearest (const Vector2D &pt, const NearestNeighborDistanceFunc2< T > &distanceFunc) const override |
|
bool | Intersects (const BoundingBox2D &box, const BoxIntersectionTestFunc2< T > &testFunc) const override |
| Returns true if given box intersects with any of the stored items. More...
|
|
bool | Intersects (const Ray2D &ray, const RayIntersectionTestFunc2< T > &testFunc) const override |
| Returns true if given ray intersects with any of the stored items. More...
|
|
void | ForEachIntersectingItem (const BoundingBox2D &box, const BoxIntersectionTestFunc2< T > &testFunc, const IntersectionVisitorFunc< T > &visitorFunc) const override |
| Invokes visitorFunc for every intersecting items. More...
|
|
void | ForEachIntersectingItem (const Ray2D &ray, const RayIntersectionTestFunc2< T > &testFunc, const IntersectionVisitorFunc< T > &visitorFunc) const override |
| Invokes visitorFunc for every intersecting items. More...
|
|
ClosestIntersectionQueryResult2< T > | ClosestIntersection (const Ray2D &ray, const GetRayIntersectionFunc2< T > &testFunc) const override |
| Returns the closest intersection for given ray . More...
|
|
Iterator | begin () |
| Returns the begin iterator of the item. More...
|
|
Iterator | end () |
| Returns the end iterator of the item. More...
|
|
ConstIterator | begin () const |
| Returns the immutable begin iterator of the item. More...
|
|
ConstIterator | end () const |
| Returns the immutable end iterator of the item. More...
|
|
size_t | GetNumberOfItems () const |
| Returns the number of items. More...
|
|
const T & | GetItem (size_t i) const |
| Returns the item at i . More...
|
|
size_t | GetNumberOfNodes () const |
| Returns the number of quadtree nodes. More...
|
|
const std::vector< size_t > & | GetItemsAtNode (size_t nodeIdx) const |
| Returns the list of the items for given node index. More...
|
|
size_t | GetChildIndex (size_t nodeIdx, size_t childIdx) const |
| Returns a child's index for given node. More...
|
|
const BoundingBox2D & | GetBoundingBox () const |
| Returns the bounding box of this quadtree. More...
|
|
size_t | GetMaxDepth () const |
| Returns the maximum depth of the tree. More...
|
|
| IntersectionQueryEngine ()=default |
| Default constructor. More...
|
|
virtual | ~IntersectionQueryEngine ()=default |
| Default virtual destructor. More...
|
|
| IntersectionQueryEngine (const IntersectionQueryEngine &other)=default |
| Default copy constructor. More...
|
|
| IntersectionQueryEngine (IntersectionQueryEngine &&other) noexcept=default |
| Default move constructor. More...
|
|
IntersectionQueryEngine & | operator= (const IntersectionQueryEngine &other)=default |
| Default copy assignment operator. More...
|
|
IntersectionQueryEngine & | operator= (IntersectionQueryEngine &&other) noexcept=default |
| Default move assignment operator. More...
|
|
virtual bool | Intersects (const BoundingBox< double, N > &box, const BoxIntersectionTestFunc< T, N > &testFunc) const =0 |
| Returns true if given box intersects with any of the stored items. More...
|
|
virtual bool | Intersects (const Ray< double, N > &ray, const RayIntersectionTestFunc< T, N > &testFunc) const =0 |
| Returns true if given ray intersects with any of the stored items. More...
|
|
virtual void | ForEachIntersectingItem (const BoundingBox< double, N > &box, const BoxIntersectionTestFunc< T, N > &testFunc, const IntersectionVisitorFunc< T > &visitorFunc) const =0 |
| Invokes visitorFunc for every intersecting items. More...
|
|
virtual void | ForEachIntersectingItem (const Ray< double, N > &ray, const RayIntersectionTestFunc< T, N > &testFunc, const IntersectionVisitorFunc< T > &visitorFunc) const =0 |
| Invokes visitorFunc for every intersecting items. More...
|
|
virtual ClosestIntersectionQueryResult< T, N > | ClosestIntersection (const Ray< double, N > &ray, const GetRayIntersectionFunc< T, N > &testFunc) const =0 |
| Returns the closest intersection for given ray . More...
|
|
| NearestNeighborQueryEngine ()=default |
| Default constructor. More...
|
|
virtual | ~NearestNeighborQueryEngine ()=default |
| Default virtual destructor. More...
|
|
| NearestNeighborQueryEngine (const NearestNeighborQueryEngine &other)=default |
| Default copy constructor. More...
|
|
| NearestNeighborQueryEngine (NearestNeighborQueryEngine &&other) noexcept=default |
| Default move constructor. More...
|
|
NearestNeighborQueryEngine & | operator= (const NearestNeighborQueryEngine &other)=default |
| Default copy assignment operator. More...
|
|
NearestNeighborQueryEngine & | operator= (NearestNeighborQueryEngine &&other) noexcept=default |
| Default move assignment operator. More...
|
|
virtual NearestNeighborQueryResult< T, N > | Nearest (const Vector< double, N > &pt, const NearestNeighborDistanceFunc< T, N > &distanceFunc) const =0 |
|
template<typename T>
class CubbyFlow::Quadtree< T >
Generic quadtree data structure.
This class is a generic quadtree representation to store arbitrary spatial data. The quadtree supports closest neighbor search, overlapping test, and ray intersection test.
- Template Parameters
-