Fermat
Public Types | Public Methods | Public Members | List of all members
cugar::Bbox< Vector_t > Struct Template Reference

Detailed description

template<typename Vector_t>
struct cugar::Bbox< Vector_t >

Axis-Aligned Bounding Bbox class, templated over an arbitrary vector type

#include <bbox.h>

Public Types

typedef Vector_t::value_type value_type
 
typedef Vector_t vector_type
 

Public Methods

CUGAR_HOST CUGAR_DEVICE Bbox ()
 
CUGAR_HOST CUGAR_DEVICE Bbox (const Vector_t &v)
 
CUGAR_HOST CUGAR_DEVICE Bbox (const Vector_t &v1, const Vector_t &v2)
 
CUGAR_HOST CUGAR_DEVICE Bbox (const Bbox< Vector_t > &bb1, const Bbox< Vector_t > &bb2)
 
CUGAR_HOST CUGAR_DEVICE Bbox (const Bbox< Vector_t > &bb)
 
CUGAR_HOST CUGAR_DEVICE void insert (const Vector_t &v)
 
CUGAR_HOST CUGAR_DEVICE void insert (const Bbox &v)
 
CUGAR_HOST CUGAR_DEVICE void clear ()
 
CUGAR_HOST CUGAR_DEVICE const Vector_t & operator[] (const size_t i) const
 
CUGAR_HOST CUGAR_DEVICE Vector_t & operator[] (const size_t i)
 
CUGAR_HOST CUGAR_DEVICE Bbox< Vector_t > & operator= (const Bbox< Vector_t > &bb)
 

Public Members

Vector_t m_min
 min corner
 
Vector_t m_max
 max corner
 

Constructor & Destructor Documentation

◆ Bbox() [1/5]

template<typename Vector_t >
cugar::Bbox< Vector_t >::Bbox ( )

empty constructor

◆ Bbox() [2/5]

template<typename Vector_t>
cugar::Bbox< Vector_t >::Bbox ( const Vector_t &  v)

point constructor

Parameters
vpoint

◆ Bbox() [3/5]

template<typename Vector_t>
cugar::Bbox< Vector_t >::Bbox ( const Vector_t &  v1,
const Vector_t &  v2 
)

min/max constructor

Parameters
v1min corner
v2max corner

◆ Bbox() [4/5]

template<typename Vector_t>
cugar::Bbox< Vector_t >::Bbox ( const Bbox< Vector_t > &  bb1,
const Bbox< Vector_t > &  bb2 
)

merging constructor

Parameters
bb1first bbox
bb2second bbox

◆ Bbox() [5/5]

template<typename Vector_t>
cugar::Bbox< Vector_t >::Bbox ( const Bbox< Vector_t > &  bb)

copy constructor

Parameters
bbbbox to copy

Member Function Documentation

◆ clear()

template<typename Vector_t >
void cugar::Bbox< Vector_t >::clear ( )

clear bbox

◆ insert() [1/2]

template<typename Vector_t>
void cugar::Bbox< Vector_t >::insert ( const Vector_t &  v)

insert a point

Parameters
vpoint to insert

◆ insert() [2/2]

template<typename Vector_t>
void cugar::Bbox< Vector_t >::insert ( const Bbox< Vector_t > &  v)

insert a bbox

Parameters
vbbox to insert

◆ operator=()

template<typename Vector_t>
Bbox< Vector_t > & cugar::Bbox< Vector_t >::operator= ( const Bbox< Vector_t > &  bb)

copy operator

Parameters
bbbbox to copy

◆ operator[]() [1/2]

template<typename Vector_t>
CUGAR_HOST CUGAR_DEVICE const Vector_t& cugar::Bbox< Vector_t >::operator[] ( const size_t  i) const
inline

const corner indexing operator

Parameters
icorner to retrieve

◆ operator[]() [2/2]

template<typename Vector_t>
CUGAR_HOST CUGAR_DEVICE Vector_t& cugar::Bbox< Vector_t >::operator[] ( const size_t  i)
inline

corner indexing operator

Parameters
icorner to retrieve

The documentation for this struct was generated from the following files: