SOFA API  27534f6d
Open source framework for multi-physics simuation
sofa::defaulttype::BoundingBox Class Reference

#include <BoundingBox.h>

Inheritance diagram for sofa::defaulttype::BoundingBox:

Protected Attributes

bbox_t bbox
 

Public Member Functions

 BoundingBox ()
 
 BoundingBox (const Vector3 &minBBox, const Vector3 &maxBBox)
 Define using the endpoints of the main diagonal. More...
 
 BoundingBox (const bbox_t &bbox)
 
 BoundingBox (SReal xmin, SReal xmax, SReal ymin, SReal ymax, SReal zmin, SReal zmax)
 Define using xmin, xmax, ymin, ymax, zmin, zmax in this order. More...
 
 BoundingBox (const Vec6f &bbox)
 Define using xmin, xmax, ymin, ymax, zmin, zmax in this order. More...
 
 BoundingBox (const Vec6d &bbox)
 Define using xmin, xmax, ymin, ymax, zmin, zmax in this order. More...
 
 operator bbox_t () const
 
void invalidate ()
 
bool isValid () const
 
bool isFlat () const
 
bool isNegligeable () const
 
bool isNull () const
 
SReal * minBBoxPtr ()
 
SReal * maxBBoxPtr ()
 
const SReal * minBBoxPtr () const
 
const SReal * maxBBoxPtr () const
 
const Vector3 & minBBox () const
 
const Vector3 & maxBBox () const
 
Vector3 & minBBox ()
 
Vector3 & maxBBox ()
 
bool contains (const sofa::defaulttype::Vector3 &point) const
 
bool contains (const BoundingBox &other) const
 
bool intersect (const BoundingBox &other) const
 
void intersection (const BoundingBox &other)
 
void include (const sofa::defaulttype::Vector3 &point)
 
void include (const BoundingBox &other)
 
void inflate (SReal amount)
 
BoundingBox getIntersection (const BoundingBox &other) const
 
BoundingBox getInclude (const sofa::defaulttype::Vector3 &point) const
 
BoundingBox getInclude (const BoundingBox &other) const
 
BoundingBox getInflate (SReal amount) const
 

Static Public Member Functions

static BoundingBox neutral_bbox ()
 

Friends

std::ostream & operator<< (std::ostream &out, const BoundingBox &bbox)
 
std::istream & operator>> (std::istream &in, BoundingBox &bbox)
 

Attribute details

bbox_t sofa::defaulttype::BoundingBox::bbox
protected

Constructor details

sofa::defaulttype::BoundingBox::BoundingBox ( )
sofa::defaulttype::BoundingBox::BoundingBox ( const Vector3 &  minBBox,
const Vector3 &  maxBBox 
)

Define using the endpoints of the main diagonal.

sofa::defaulttype::BoundingBox::BoundingBox ( const bbox_t bbox)
sofa::defaulttype::BoundingBox::BoundingBox ( SReal  xmin,
SReal  xmax,
SReal  ymin,
SReal  ymax,
SReal  zmin,
SReal  zmax 
)

Define using xmin, xmax, ymin, ymax, zmin, zmax in this order.

sofa::defaulttype::BoundingBox::BoundingBox ( const Vec6f &  bbox)

Define using xmin, xmax, ymin, ymax, zmin, zmax in this order.

sofa::defaulttype::BoundingBox::BoundingBox ( const Vec6d &  bbox)

Define using xmin, xmax, ymin, ymax, zmin, zmax in this order.

Function details

bool sofa::defaulttype::BoundingBox::contains ( const sofa::defaulttype::Vector3 &  point) const
bool sofa::defaulttype::BoundingBox::contains ( const BoundingBox other) const
BoundingBox sofa::defaulttype::BoundingBox::getInclude ( const sofa::defaulttype::Vector3 &  point) const
BoundingBox sofa::defaulttype::BoundingBox::getInclude ( const BoundingBox other) const
BoundingBox sofa::defaulttype::BoundingBox::getInflate ( SReal  amount) const
BoundingBox sofa::defaulttype::BoundingBox::getIntersection ( const BoundingBox other) const
void sofa::defaulttype::BoundingBox::include ( const sofa::defaulttype::Vector3 &  point)
void sofa::defaulttype::BoundingBox::include ( const BoundingBox other)
void sofa::defaulttype::BoundingBox::inflate ( SReal  amount)
bool sofa::defaulttype::BoundingBox::intersect ( const BoundingBox other) const
void sofa::defaulttype::BoundingBox::intersection ( const BoundingBox other)
void sofa::defaulttype::BoundingBox::invalidate ( )
bool sofa::defaulttype::BoundingBox::isFlat ( ) const
bool sofa::defaulttype::BoundingBox::isNegligeable ( ) const
bool sofa::defaulttype::BoundingBox::isNull ( ) const
bool sofa::defaulttype::BoundingBox::isValid ( ) const
const Vector3 & sofa::defaulttype::BoundingBox::maxBBox ( ) const
Vector3 & sofa::defaulttype::BoundingBox::maxBBox ( )
SReal * sofa::defaulttype::BoundingBox::maxBBoxPtr ( )
const SReal * sofa::defaulttype::BoundingBox::maxBBoxPtr ( ) const
const Vector3 & sofa::defaulttype::BoundingBox::minBBox ( ) const
Vector3 & sofa::defaulttype::BoundingBox::minBBox ( )
SReal * sofa::defaulttype::BoundingBox::minBBoxPtr ( )
const SReal * sofa::defaulttype::BoundingBox::minBBoxPtr ( ) const
BoundingBox sofa::defaulttype::BoundingBox::neutral_bbox ( )
static
sofa::defaulttype::BoundingBox::operator bbox_t ( ) const

Related details

std::ostream& operator<< ( std::ostream &  out,
const BoundingBox bbox 
)
friend
std::istream& operator>> ( std::istream &  in,
BoundingBox bbox 
)
friend