libLAS API Reference  1.8.1
Public Types | Public Member Functions | List of all members
liblas::Bounds< T > Class Template Reference

#include <bounds.hpp>

Collaboration diagram for liblas::Bounds< T >:
Collaboration graph

Public Types

typedef T value_type
 
typedef std::vector< Range< T > >::size_type size_type
 
typedef std::vector< Range< T > > RangeVec
 

Public Member Functions

 Bounds ()
 
 Bounds (Bounds const &other)
 
 Bounds (RangeVec const &rngs)
 
 Bounds (T minx, T miny, T minz, T maxx, T maxy, T maxz)
 
 Bounds (T minx, T miny, T maxx, T maxy)
 
 Bounds (const Point &min, const Point &max)
 
T() min (std::size_t const &index) const
 
void() min (std::size_t const &index, T v)
 
T() max (std::size_t const &index) const
 
void() max (std::size_t const &index, T v)
 
minx () const
 
miny () const
 
minz () const
 
maxx () const
 
maxy () const
 
maxz () const
 
bool operator== (Bounds< T > const &rhs) const
 
bool operator!= (Bounds< T > const &rhs) const
 
Bounds< T > & operator= (Bounds< T > const &rhs)
 
RangeVec const & dims () const
 The vector of Range<T> for the Bounds. More...
 
size_type dimension () const
 The number of dimensions of the Bounds. More...
 
void dimension (size_type d)
 Resize the dimensionality of the Bounds to d. More...
 
bool equal (Bounds< T > const &other) const
 Is this Bounds equal to other? More...
 
bool intersects (Bounds const &other) const
 Does this Bounds intersect other? More...
 
bool overlaps (Bounds const &other) const
 Synonym for intersects for now. More...
 
bool contains (Bounds const &other) const
 Does this Bounds contain other? More...
 
bool contains (Point const &point) const
 Does this Bounds this point other? More...
 
void shift (std::vector< T > deltas)
 Shift each dimension by a vector of detlas. More...
 
void scale (std::vector< T > deltas)
 Scale each dimension by a vector of deltas. More...
 
void clip (Bounds const &r)
 Clip this Bounds to the extent of r. More...
 
void grow (Bounds const &r)
 Grow to the union of two liblas::Bounds. More...
 
void grow (Point const &p)
 Expand the liblas::Bounds to include this point. More...
 
volume () const
 
bool empty () const
 
void verify ()
 

Member Typedef Documentation

template<typename T>
typedef std::vector< Range<T> > liblas::Bounds< T >::RangeVec
template<typename T>
typedef std::vector< Range<T> >::size_type liblas::Bounds< T >::size_type
template<typename T>
typedef T liblas::Bounds< T >::value_type

Constructor & Destructor Documentation

template<typename T>
liblas::Bounds< T >::Bounds ( )
inline
template<typename T>
liblas::Bounds< T >::Bounds ( Bounds< T > const &  other)
inline
template<typename T>
liblas::Bounds< T >::Bounds ( RangeVec const &  rngs)
inline
template<typename T>
liblas::Bounds< T >::Bounds ( minx,
miny,
minz,
maxx,
maxy,
maxz 
)
inline
template<typename T>
liblas::Bounds< T >::Bounds ( minx,
miny,
maxx,
maxy 
)
inline
template<typename T>
liblas::Bounds< T >::Bounds ( const Point min,
const Point max 
)
inline

Member Function Documentation

template<typename T>
void liblas::Bounds< T >::clip ( Bounds< T > const &  r)
inline

Clip this Bounds to the extent of r.

template<typename T>
bool liblas::Bounds< T >::contains ( Bounds< T > const &  other) const
inline

Does this Bounds contain other?

template<typename T>
bool liblas::Bounds< T >::contains ( Point const &  point) const
inline

Does this Bounds this point other?

template<typename T>
size_type liblas::Bounds< T >::dimension ( ) const
inline

The number of dimensions of the Bounds.

template<typename T>
void liblas::Bounds< T >::dimension ( size_type  d)
inline

Resize the dimensionality of the Bounds to d.

template<typename T>
RangeVec const& liblas::Bounds< T >::dims ( ) const
inline

The vector of Range<T> for the Bounds.

Referenced by liblas::Bounds< double >::clip(), and liblas::Bounds< double >::grow().

template<typename T>
bool liblas::Bounds< T >::empty ( ) const
inline
template<typename T>
bool liblas::Bounds< T >::equal ( Bounds< T > const &  other) const
inline

Is this Bounds equal to other?

template<typename T>
void liblas::Bounds< T >::grow ( Bounds< T > const &  r)
inline

Grow to the union of two liblas::Bounds.

template<typename T>
void liblas::Bounds< T >::grow ( Point const &  p)
inline

Expand the liblas::Bounds to include this point.

template<typename T>
bool liblas::Bounds< T >::intersects ( Bounds< T > const &  other) const
inline

Does this Bounds intersect other?

template<typename T>
T() liblas::Bounds< T >::max ( std::size_t const &  index) const
inline
template<typename T>
void() liblas::Bounds< T >::max ( std::size_t const &  index,
v 
)
inline
template<typename T>
T liblas::Bounds< T >::maxx ( ) const
inline
template<typename T>
T liblas::Bounds< T >::maxy ( ) const
inline
template<typename T>
T liblas::Bounds< T >::maxz ( ) const
inline
template<typename T>
T() liblas::Bounds< T >::min ( std::size_t const &  index) const
inline
template<typename T>
void() liblas::Bounds< T >::min ( std::size_t const &  index,
v 
)
inline
template<typename T>
T liblas::Bounds< T >::minx ( ) const
inline
template<typename T>
T liblas::Bounds< T >::miny ( ) const
inline
template<typename T>
T liblas::Bounds< T >::minz ( ) const
inline
template<typename T>
bool liblas::Bounds< T >::operator!= ( Bounds< T > const &  rhs) const
inline
template<typename T>
Bounds<T>& liblas::Bounds< T >::operator= ( Bounds< T > const &  rhs)
inline
template<typename T>
bool liblas::Bounds< T >::operator== ( Bounds< T > const &  rhs) const
inline
template<typename T>
bool liblas::Bounds< T >::overlaps ( Bounds< T > const &  other) const
inline

Synonym for intersects for now.

template<typename T>
void liblas::Bounds< T >::scale ( std::vector< T >  deltas)
inline

Scale each dimension by a vector of deltas.

template<typename T>
void liblas::Bounds< T >::shift ( std::vector< T >  deltas)
inline

Shift each dimension by a vector of detlas.

template<typename T>
void liblas::Bounds< T >::verify ( )
inline
template<typename T>
T liblas::Bounds< T >::volume ( ) const
inline

The documentation for this class was generated from the following file: