BALL 1.5.0
Loading...
Searching...
No Matches
BALL::TBox3< T > Class Template Reference

#include <BALL/MATHS/box3.h>

Public Member Functions

Constructors and Destructors
 TBox3 ()
 TBox3 (const TBox3 &box)
 TBox3 (const TVector3< T > &point, const TVector3< T > &right_vector, const TVector3< T > &height_vector, const T &depth=1)
 TBox3 (const TVector3< T > &point, const TVector3< T > &right_vector=TVector3< T >((T) 0,(T) 1,(T) 0), const TVector3< T > &height_vector=TVector3< T >((T) 1,(T) 0,(T) 0), const TVector3< T > &depth_vector=TVector3< T >((T) 0,(T) 0,(T) 1))
virtual ~TBox3 ()
virtual void clear ()
Assignment
void set (const TBox3 &box)
const TBox3 & operator= (const TBox3 &box)
void swap (TBox3 &box)
Accessors
void setWidth (T width)
 Set width.
T getWidth () const
 Get width.
void setHeight (T height)
 Set height.
T getHeight () const
 Get height.
void setDepth (T depth)
 Set depth.
T getDepth () const
 Get depth.
const TVector3< T > & getPoint () const
 Get the point.
void setPoint (const TVector3< T > &point)
 Set the point.
const TVector3< T > & getRightVector () const
 Get the right vector.
void setRightVector (const TVector3< T > &v)
 Set the right vector.
const TVector3< T > & getHeightVector () const
 Get the height vector.
void setHeightVector (const TVector3< T > &v)
 Set the height vector.
const TVector3< T > & getDepthVector () const
 Get the depth vector.
void setDepthVector (const TVector3< T > &v)
 Set the depth vector.
T getSurface () const
T getVolume () const
TVector3< T > getDiagonalVector () const
Predicates
bool operator== (const TBox3 &box) const
bool operator!= (const TBox3 &box) const

Debugging and Diagnostics

TVector3< T > point_
TVector3< T > right_vector_
TVector3< T > height_vector_
TVector3< T > depth_vector_
T width_
T height_
T depth_
bool isValid () const
void dump (std::ostream &s=std::cout, Size depth=0) const

Detailed Description

template<typename T>
class BALL::TBox3< T >

Generic three-dimensional Box. This class describes a three-dimensional box. A box is given by the coordinates of the lower left front corner, a right vector, a height vector and a depth vector.\

Definition at line 32 of file box3.h.

Constructor & Destructor Documentation

◆ TBox3() [1/4]

template<typename T>
BALL::TBox3< T >::TBox3 ( )

Default constructor.

Definition at line 252 of file box3.h.

◆ TBox3() [2/4]

template<typename T>
BALL::TBox3< T >::TBox3 ( const TBox3< T > & box)

Copy constructor.

Parameters
boxthe TBox3 object to be copied

Definition at line 264 of file box3.h.

◆ TBox3() [3/4]

template<typename T>
BALL::TBox3< T >::TBox3 ( const TVector3< T > & point,
const TVector3< T > & right_vector,
const TVector3< T > & height_vector,
const T & depth = 1 )

Detailed constructor.

Parameters
pointthe lower left corner of the box
right_vectorthe right vector of the box
heigth_vectorthe height vector of the box
depththe depth of the box

Definition at line 227 of file box3.h.

◆ TBox3() [4/4]

template<typename T>
BALL::TBox3< T >::TBox3 ( const TVector3< T > & point,
const TVector3< T > & right_vector = TVector3<T>((T) 0, (T)1, (T)0),
const TVector3< T > & height_vector = TVector3<T>((T) 1, (T)0, (T)0),
const TVector3< T > & depth_vector = TVector3<T>((T) 0, (T)0, (T)1) )

Detailed constructor.

Parameters
pointthe lower left corner of the box
right_vectorthe right vector of the box
heigth_vectorthe height vector of the box
depth_vectorthe depth vector of the box

Definition at line 238 of file box3.h.

◆ ~TBox3()

template<typename T>
virtual BALL::TBox3< T >::~TBox3 ( )
inlinevirtual

Destructor.

Definition at line 75 of file box3.h.

Member Function Documentation

◆ clear()

template<typename T>
void BALL::TBox3< T >::clear ( )
virtual

Clear method. The values are set to 0.

Reimplemented in BALL::VIEW::Box.

Definition at line 309 of file box3.h.

◆ dump()

template<typename T>
void BALL::TBox3< T >::dump ( std::ostream & s = std::cout,
Size depth = 0 ) const

Internal state dump. Dump the current internal state of {*this} to the output ostream s with dumping depth depth .

Parameters
s- output stream where to output the internal state of {*this}
depth- the dumping depth

Definition at line 426 of file box3.h.

◆ getDepth()

template<typename T>
T BALL::TBox3< T >::getDepth ( ) const
inline

Get depth.

Definition at line 124 of file box3.h.

◆ getDepthVector()

template<typename T>
const TVector3< T > & BALL::TBox3< T >::getDepthVector ( ) const
inline

Get the depth vector.

Definition at line 145 of file box3.h.

◆ getDiagonalVector()

template<typename T>
TVector3< T > BALL::TBox3< T >::getDiagonalVector ( ) const

Definition at line 380 of file box3.h.

◆ getHeight()

template<typename T>
T BALL::TBox3< T >::getHeight ( ) const
inline

Get height.

Definition at line 118 of file box3.h.

◆ getHeightVector()

template<typename T>
const TVector3< T > & BALL::TBox3< T >::getHeightVector ( ) const
inline

Get the height vector.

Definition at line 139 of file box3.h.

◆ getPoint()

template<typename T>
const TVector3< T > & BALL::TBox3< T >::getPoint ( ) const
inline

Get the point.

Definition at line 127 of file box3.h.

◆ getRightVector()

template<typename T>
const TVector3< T > & BALL::TBox3< T >::getRightVector ( ) const
inline

Get the right vector.

Definition at line 133 of file box3.h.

◆ getSurface()

template<typename T>
BALL_INLINE T BALL::TBox3< T >::getSurface ( ) const

Calculate the surface area.

Returns
T the surface

Definition at line 374 of file box3.h.

◆ getVolume()

template<typename T>
BALL_INLINE T BALL::TBox3< T >::getVolume ( ) const

Calculate the volume.

Returns
T the volume

Definition at line 387 of file box3.h.

◆ getWidth()

template<typename T>
T BALL::TBox3< T >::getWidth ( ) const
inline

Get width.

Definition at line 112 of file box3.h.

◆ isValid()

template<typename T>
BALL_INLINE bool BALL::TBox3< T >::isValid ( ) const

Test whether instance is valid. Always returns true.

Returns
bool true

Definition at line 413 of file box3.h.

◆ operator!=()

template<typename T>
BALL_INLINE bool BALL::TBox3< T >::operator!= ( const TBox3< T > & box) const

Inequality operator.

Returns
bool, true if the two boxes differ in at least one component, false otherwise

Definition at line 406 of file box3.h.

◆ operator=()

template<typename T>
BALL_INLINE const TBox3< T > & BALL::TBox3< T >::operator= ( const TBox3< T > & box)

Assignment operator. Assign the box components from another instance of TBox3.

Parameters
boxthe TBox3 to assign from

Definition at line 289 of file box3.h.

◆ operator==()

template<typename T>
bool BALL::TBox3< T >::operator== ( const TBox3< T > & box) const

Equality operator.

Returns
bool, true if all box components are equal, false otherwise

Definition at line 393 of file box3.h.

◆ set()

template<typename T>
void BALL::TBox3< T >::set ( const TBox3< T > & box)

Assign from another instance of TBox3.

Parameters
boxthe TBox3 object to assign from

Definition at line 276 of file box3.h.

◆ setDepth()

template<typename T>
BALL_INLINE void BALL::TBox3< T >::setDepth ( T depth)

Set depth.

Definition at line 341 of file box3.h.

◆ setDepthVector()

template<typename T>
BALL_INLINE void BALL::TBox3< T >::setDepthVector ( const TVector3< T > & v)

Set the depth vector.

Definition at line 366 of file box3.h.

◆ setHeight()

template<typename T>
BALL_INLINE void BALL::TBox3< T >::setHeight ( T height)

Set height.

Definition at line 332 of file box3.h.

◆ setHeightVector()

template<typename T>
BALL_INLINE void BALL::TBox3< T >::setHeightVector ( const TVector3< T > & v)

Set the height vector.

Definition at line 358 of file box3.h.

◆ setPoint()

template<typename T>
void BALL::TBox3< T >::setPoint ( const TVector3< T > & point)
inline

Set the point.

Definition at line 130 of file box3.h.

◆ setRightVector()

template<typename T>
BALL_INLINE void BALL::TBox3< T >::setRightVector ( const TVector3< T > & v)

Set the right vector.

Definition at line 350 of file box3.h.

◆ setWidth()

template<typename T>
BALL_INLINE void BALL::TBox3< T >::setWidth ( T width)

Set width.

Definition at line 323 of file box3.h.

◆ swap()

template<typename T>
void BALL::TBox3< T >::swap ( TBox3< T > & box)

Swap the contents of two instances.

Parameters
boxthe box to swap contents with

Definition at line 296 of file box3.h.

Member Data Documentation

◆ depth_

template<typename T>
T BALL::TBox3< T >::depth_
protected

Definition at line 221 of file box3.h.

◆ depth_vector_

template<typename T>
TVector3<T> BALL::TBox3< T >::depth_vector_
protected

Definition at line 217 of file box3.h.

◆ height_

template<typename T>
T BALL::TBox3< T >::height_
protected

Definition at line 220 of file box3.h.

◆ height_vector_

template<typename T>
TVector3<T> BALL::TBox3< T >::height_vector_
protected

Definition at line 216 of file box3.h.

◆ point_

template<typename T>
TVector3<T> BALL::TBox3< T >::point_
protected

Definition at line 214 of file box3.h.

◆ right_vector_

template<typename T>
TVector3<T> BALL::TBox3< T >::right_vector_
protected

Definition at line 215 of file box3.h.

◆ width_

template<typename T>
T BALL::TBox3< T >::width_
protected

Definition at line 219 of file box3.h.