CBoundingBox Class Reference

#include <bounding-box.hh>

Inherited by CAttributeBoundingBox.

List of all members.

Public Member Functions

Constructeurs
 CBoundingBox ()
 CBoundingBox (const CVertex &APoint)
 CBoundingBox (const CVertex &APoint1, const CVertex &APoint2)

Private Attributes

Attributs privés
CVertex FMin
CVertex FMax
bool FIsEmpty

Méthodes publiques

void addPoint (const CVertex &APoint)
void clear ()
bool isEmpty () const
bool isInBox (const CVertex &APoint) const
bool isInIntersectionWith (const CBoundingBox &ABB) const
TCoordinate getVolume () const
TCoordinate getSurface () const
const CVertexgetMinBound () const
const CVertexgetMaxBound () const
CVertex getEpsMinBound () const
CVertex getEpsMaxBound () const
CVertex getCenter () const
bool operator* (const CBoundingBox &AOther) const
CBoundingBox operator+ (const CBoundingBox &AOther) const
static TCoordinate getEpsilon ()
static void setEpsilon (TCoordinate AEpsilon)


Detailed Description

Classe définissant une boîte englobante.

Author:
Nicolas Guiard

Definition at line 35 of file bounding-box.hh.


Constructor & Destructor Documentation

CBoundingBox::CBoundingBox (  ) 

Constructeur par défaut

Returns:
Une nouvelle instance de la classe
Construction d'une nouvelle boîte englobante vide.

Definition at line 30 of file bounding-box.cc.

CBoundingBox::CBoundingBox ( const CVertex APoint  ) 

Constructeur avec initialisation

Returns:
Une nouvelle instance de la classe
Construction d'une nouvelle boîte englobante contenant un unique point.

Definition at line 35 of file bounding-box.cc.

CBoundingBox::CBoundingBox ( const CVertex APoint1,
const CVertex APoint2 
)

Constructeur avec initialisation

Returns:
Une nouvelle instance de la classe
Construction d'une nouvelle boîte englobante définit par deux points.

Definition at line 40 of file bounding-box.cc.


Member Function Documentation

void CBoundingBox::addPoint ( const CVertex APoint  ) 

addPoint

Parameters:
APoint Un point
Cette méthode permet d'ajouter un point à la boîte englobante. Si ce point est déjà dans la boîte englobante, celle-ci est inchangée, sinon elle est agrandie.

Definition at line 81 of file bounding-box.cc.

void CBoundingBox::clear (  ) 

clear

Cette méthode permet de vider la boîte englobante.

Definition at line 102 of file bounding-box.cc.

CVertex CBoundingBox::getCenter (  )  const

getCenter

Returns:
Le centre de la boîte englobante
Cette méthode permet de calculer le centre de la boîte englobante.

Definition at line 178 of file bounding-box.cc.

TCoordinate CBoundingBox::getEpsilon (  )  [static]

getEpsilon

Returns:
La valeur d'Epsilon
Cette méthode permet de récupérer la valeur de l'Epsilon utilisé lors des tests de comparaisons.

Definition at line 71 of file bounding-box.cc.

CVertex CBoundingBox::getEpsMaxBound (  )  const

getMaxBound

Returns:
Le point de la boîte englobante ayant les coordonnées les plus grandes
Cette méthode permet de connaître le point de la boîte englobante ayant les coordonnées (x, y, z) les plus grandes en prenant en compte la valeur de l'incertitude.

Definition at line 173 of file bounding-box.cc.

CVertex CBoundingBox::getEpsMinBound (  )  const

getEpsMinBound

Returns:
Le point de la boîte englobante ayant les coordonnées les plus petites
Cette méthode permet de connaître le point de la boîte englobante ayant les coordonnées (x, y, z) les plus petites en prenant en compte la valeur de l'incertitude.

Definition at line 168 of file bounding-box.cc.

const CVertex & CBoundingBox::getMaxBound (  )  const

getMaxBound

Returns:
Le point de la boîte englobante ayant les coordonnées les plus grandes
Cette méthode permet de connaître le point de la boîte englobante ayant les coordonnées (x, y, z) les plus grandes.

Definition at line 163 of file bounding-box.cc.

const CVertex & CBoundingBox::getMinBound (  )  const

getMinBound

Returns:
Le point de la boîte englobante ayant les coordonnées les plus petites
Cette méthode permet de connaître le point de la boîte englobante ayant les coordonnées (x, y, z) les plus petites.

Definition at line 158 of file bounding-box.cc.

TCoordinate CBoundingBox::getSurface (  )  const

getSurface

Returns:
La surface de la boîte englobante
Cette méthode permet de calculer la surface de la boîte englobante.

Definition at line 146 of file bounding-box.cc.

TCoordinate CBoundingBox::getVolume (  )  const

getVolume

Returns:
Le volume de la boîte englobante
Cette permet de calculer le volume de la boîte englobante courante.

Definition at line 139 of file bounding-box.cc.

bool CBoundingBox::isEmpty (  )  const

isEmpty

Returns:
Vrai si la boîte et vide et faux sinon
Cette méthode permet de savoir si la boîte est vide ou non.

Definition at line 108 of file bounding-box.cc.

bool CBoundingBox::isInBox ( const CVertex APoint  )  const

isInBox

Parameters:
APoint Un point
Returns:
vrai si le point se trouve dans la boîte englobante, faux sinon
Cette méthode permet de tester l'appartenance d'un point à une boîte englobante.

Definition at line 113 of file bounding-box.cc.

bool CBoundingBox::isInIntersectionWith ( const CBoundingBox ABB  )  const

isInIntersectionWith

Parameters:
ABB Une boîte englobante
Returns:
vrai si la boîte englobante courante coupe celle passée en paramètre et faux sinon
Cette méthode permet de tester si les domaines de deux boîtes englobantes se chevauchent.

Definition at line 126 of file bounding-box.cc.

bool CBoundingBox::operator* ( const CBoundingBox AOther  )  const

operator *

Parameters:
AOther Une boîte englobante
Returns:
vrai si la boîte englobante courante coupe celle passée en paramètre et faux sinon
Cet opérateur permet de tester si les domaines de deux boîtes englobantes se chevauchent. Cet opérateur fait juste appel à la fonction isInIntersectionWith.

Definition at line 183 of file bounding-box.cc.

CBoundingBox CBoundingBox::operator+ ( const CBoundingBox AOther  )  const

operator +

Parameters:
AOther Une boîte englobante
Returns:
La boîte englobant la boîte courante et celle passée en paramètre
Cet opérateur permet de calculer la boîte englobante de deux boîtes englobantes.

Definition at line 188 of file bounding-box.cc.

void CBoundingBox::setEpsilon ( TCoordinate  AEpsilon  )  [static]

setEpsilon

Parameters:
AEpsilon La valeur d'Epsilon
Cette méthode permet de définir la valeur de l'Epsilon à utiliser lors des comparaisons. Cette valeur est la même pour toutes les boîtes englobantes.

Definition at line 76 of file bounding-box.cc.


Member Data Documentation

bool CBoundingBox::FIsEmpty [private]

FIsEmpty Indique si la boîte est vide ou non.

Definition at line 244 of file bounding-box.hh.

Definition at line 238 of file bounding-box.hh.

FMin, FMax Les bornes inférieures et supérieures de la boîte englobante.

Definition at line 238 of file bounding-box.hh.


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

Generated on Tue Jul 7 15:20:59 2009 for Moka libraries by  doxygen 1.5.8