AABBtree  0.0.1
A C++ non-recursive ND AABB tree
Loading...
Searching...
No Matches
AABBtree Namespace Reference

Namespace for the AABBtree library. More...

Classes

class  Box
 A class representing an axis-aligned bounding box (AABB) in N-dimensional space. More...
class  Ray
 A mathematical ray in N-dimensional space. More...
class  Tree
 A class representing a non-recursive axis-aligned bounding box tree (AABB tree). More...

Typedefs

using Integer = AABBTREE_DEFAULT_INTEGER_TYPE
 The Integer type used in the AABBtree class.
using IndexSet = std::set<Integer>
using IndexMap = std::map<Integer, IndexSet>
using IndexList = std::vector<Integer>
using OutStream = std::basic_ostream<char>
template<typename Real, Integer N>
using BoxUniquePtr = std::unique_ptr<Box<Real, N>>
template<typename Real, Integer N>
using BoxUniquePtrList = std::vector<BoxUniquePtr<Real, N>>
template<typename Real, Integer N>
using Vector = Eigen::Vector<Real, N>
template<typename Real, Integer N>
using Point = Eigen::Vector<Real, N>

Functions

template<typename Real, Integer N>
std::ostream & operator<< (std::ostream &os, Box< Real, N > const &b)
template<typename Real, Integer N>
std::ostream & operator<< (std::ostream &os, Ray< Real, N > const &r)

Detailed Description

The AABBtree namespace contains all the classes and functions of the AABBtree library.

Typedef Documentation

◆ BoxUniquePtr

template<typename Real, Integer N>
using AABBtree::BoxUniquePtr = std::unique_ptr<Box<Real, N>>

◆ BoxUniquePtrList

template<typename Real, Integer N>
using AABBtree::BoxUniquePtrList = std::vector<BoxUniquePtr<Real, N>>

◆ IndexList

using AABBtree::IndexList = std::vector<Integer>

◆ IndexMap

using AABBtree::IndexMap = std::map<Integer, IndexSet>

◆ IndexSet

using AABBtree::IndexSet = std::set<Integer>

◆ Integer

The Integer type, is defined by the preprocessor symbol AABBTREE_DEFAULT_INTEGER_TYPE. The default value is int.

◆ OutStream

using AABBtree::OutStream = std::basic_ostream<char>

◆ Point

template<typename Real, Integer N>
using AABBtree::Point = Eigen::Vector<Real, N>

◆ Vector

template<typename Real, Integer N>
using AABBtree::Vector = Eigen::Vector<Real, N>

Function Documentation

◆ operator<<() [1/2]

template<typename Real, Integer N>
std::ostream & AABBtree::operator<< ( std::ostream & os,
Box< Real, N > const & b )

Print the box info to an output stream.

Parameters
[in]osOutput stream to print the box info to.
[in]bBox to print.
Template Parameters
RealType of the scalar coefficients.
NDimension of the ambient space.

◆ operator<<() [2/2]

template<typename Real, Integer N>
std::ostream & AABBtree::operator<< ( std::ostream & os,
Ray< Real, N > const & r )

Print the ray info to an output stream.

Parameters
[in]osOutput stream to print the ray info to.
[in]rRay to print.
Template Parameters
RealType of the scalar coefficients.
NDimension of the ambient space.