CPlane Class Reference
#include <plane.hh>
List of all members.
|
Public Member Functions |
|
| CPlane () |
| CPlane (TCoordinate Aa, TCoordinate Ab, TCoordinate Ac, TCoordinate Ad) |
| CPlane (const CVertex &APoint1, const CVertex &APoint2, const CVertex &APoint3) |
| CPlane (const CVertex &ANormal, const CVertex &APoint) |
virtual | ~CPlane () |
|
void | setPlane (TCoordinate Aa, TCoordinate Ab, TCoordinate Ac, TCoordinate Ad) |
void | setPlane (const CVertex &APoint1, const CVertex &APoint2, const CVertex &APoint3) |
void | setPlane (const CVertex &ANormal, const CVertex &APoint) |
const CVertex & | getNormal () const |
TCoordinate | getNormalNorm () const |
TCoordinate | getA () const |
TCoordinate | getB () const |
TCoordinate | getC () const |
TCoordinate | getD () const |
void | reverseOrientation () |
bool | isPointOnPlane (const CVertex &APoint) const |
TCoordinate | pointDistance (const CVertex &APoint) const |
bool | getLineIntersection (const CVertex &APoint, const CVertex &ADirection, TCoordinate *AInterParam) const |
bool | getLineIntersection (const CVertex &APoint, const CVertex &ADirection, CVertex *AInter) const |
TProjection | getBestProjection () const |
CVertex | projectPoint (const CVertex &APoint) const |
CVertex | projectPoint (const CVertex &APoint, TProjection AProj) const |
CVertex | unprojectPoint (const CVertex &APoint, TProjection AProj) const |
Private Attributes |
|
CVertex | FNormal |
TCoordinate | FNormalNorm |
TCoordinate | FD |
Friends |
std::ostream & | operator<< (std::ostream &AStream, const CPlane &APlane) |
Detailed Description
Classe définissant un plan.
Definition at line 40 of file plane.hh.
Constructor & Destructor Documentation
INLINE CPlane::CPlane |
( |
|
) |
|
Construction d'une nouvelle instance de la classe initialisée avec un plan non défini.
- Returns:
- Une nouvelle instance de la classe
Definition at line 26 of file plane.icc.
Construction d'une nouvelle instance de la classe initialisée avec un plan ayant pour équation Aa * x + Ab * y + Ac * z + Ad = 0.
- Parameters:
-
| Aa | Coefficient 'a' de l'équation du plan |
| Ab | Coefficient 'b' de l'équation du plan |
| Ac | Coefficient 'c' de l'équation du plan |
| Ad | Coefficient 'd' de l'équation du plan |
- Returns:
- Une nouvelle instance de la classe
Definition at line 32 of file plane.icc.
Construction d'une nouvelle instance de la classe initialisée avec un plan passant par les 3 sommets passés en paramètre.
- Parameters:
-
| APoint1 | Un point par lequel passe le plan |
| APoint2 | Un point par lequel passe le plan |
| APoint3 | Un point par lequel passe le plan |
- Returns:
- Une nouvelle instance de la classe
Definition at line 38 of file plane.icc.
INLINE CPlane::CPlane |
( |
const CVertex & |
ANormal, |
|
|
const CVertex & |
APoint | |
|
) |
| | |
Construction d'une nouvelle instance de la classe initialisée avec un plan ayant pour normale ANormal et qui passe par APoint.
- Parameters:
-
| ANormal | Le vecteur normale au plan |
| APoint | Un point par lequel passe le plan |
- Returns:
- Une nouvelle instance de la classe
Definition at line 46 of file plane.icc.
INLINE CPlane::~CPlane |
( |
|
) |
[virtual] |
Destruction de l'instance.
Definition at line 52 of file plane.icc.
Member Function Documentation
Cette méthode permet de récupérer le coefficient "a" de l'équation du plan.
- Returns:
- le coefficient "a"
Definition at line 99 of file plane.icc.
Cette méthode permet de récupérer le coefficient "b" de l'équation du plan.
- Returns:
- le coefficient "b"
Definition at line 105 of file plane.icc.
Cette méthode permet de donner le plan de projection le mieux adapté pour la projcetion de points appartenant au plan.
- Returns:
- Le plan de projection le mieux adapté
Definition at line 181 of file plane.icc.
Cette méthode permet de récupérer le coefficient "c" de l'équation du plan.
- Returns:
- le coefficient "c"
Definition at line 111 of file plane.icc.
Cette méthode permet de récupérer le coefficient "d" de l'équation du plan.
- Returns:
- le coefficient "d"
Definition at line 117 of file plane.icc.
INLINE bool CPlane::getLineIntersection |
( |
const CVertex & |
APoint, |
|
|
const CVertex & |
ADirection, |
|
|
CVertex * |
AInter | |
|
) |
| | const |
Cette méthode permet de calculer l'intersection entre une droite et le plan. Si une intersection a été trouvée, elle donne le point d'intersection par l'intermédiaire de AInter.
- Parameters:
-
| APoint | Un point d'un droite |
| ADirection | Le vecteur directeur de la droite |
| AInter | Le point d'intersection entre la droite et le plan |
- Returns:
- vrai s'il y a une intersection, faux sinon
Definition at line 164 of file plane.icc.
INLINE bool CPlane::getLineIntersection |
( |
const CVertex & |
APoint, |
|
|
const CVertex & |
ADirection, |
|
|
TCoordinate * |
AInterParam | |
|
) |
| | const |
Cette méthode permet de calculer l'intersection entre une droite et le plan. Si une intersection a été trouvée, elle donne le paramètre du point d'intersection sur la droite par l'intermédiaire de AInterParam.
- Parameters:
-
| APoint | Un point d'un droite |
| ADirection | Le vecteur directeur de la droite |
| AInterParam | Le paramètre sur la droite du point d'intersection entre la droite et le plan |
- Returns:
- vrai s'il y a une intersection, faux sinon
Definition at line 148 of file plane.icc.
INLINE const CVertex & CPlane::getNormal |
( |
|
) |
const |
Cette méthode permet de récupérer la normale au plan.
- Returns:
- La normale au plan
Definition at line 87 of file plane.icc.
Cette méthode permet de récupérer la norme de la normale au plan.
- Returns:
- La normale au plan
Definition at line 93 of file plane.icc.
INLINE bool CPlane::isPointOnPlane |
( |
const CVertex & |
APoint |
) |
const |
Cette méthode permet de tester l'appartenance d'un point au plan.
- Parameters:
-
- Returns:
- vrai si le point appartient au plan, faux sinon
Definition at line 130 of file plane.icc.
Cette méthode permet de calculer la distance relative entre un point et le plan courant
- Parameters:
-
- Returns:
- la distance relative entre APoint et le plan courant
Definition at line 139 of file plane.icc.
Cette méthode permet de projeter un point du plan sur un plan de projection parallèle aux axes du repère.
- Parameters:
-
| APoint | Un point de coordonnées (x, y, z) |
| AProj | Un plan de projection |
- Returns:
- L'image de APoint par projection sur le plan AProj
Definition at line 208 of file plane.icc.
Cette méthode permet de récupérer la projection orthogonale d'un point sur le plan.
- Parameters:
-
| APoint | Un point de coordonnées (x, y, z) |
- Returns:
- L'image de APoint par projection orthogonale sur le plan
Definition at line 198 of file plane.icc.
INLINE void CPlane::reverseOrientation |
( |
|
) |
|
Cette méthode permet d'inverser l'orientation du plan en multipliant tous les coefficients par -1.
Definition at line 123 of file plane.icc.
INLINE void CPlane::setPlane |
( |
const CVertex & |
ANormal, |
|
|
const CVertex & |
APoint | |
|
) |
| | |
Modifie le plan pour qu'il ait comme normale ANormal et qu'il passe par le point APoint.
- Parameters:
-
| ANormal | Le vecteur normale au plan |
| APoint | Un point par lequel passe le plan |
Definition at line 77 of file plane.icc.
INLINE void CPlane::setPlane |
( |
const CVertex & |
APoint1, |
|
|
const CVertex & |
APoint2, |
|
|
const CVertex & |
APoint3 | |
|
) |
| | |
Modifie le plan pour qu'il passe par les 3 points passé en paramètre.
- Parameters:
-
| APoint1 | Un point par lequel passe le plan |
| APoint2 | Un point par lequel passe le plan |
| APoint3 | Un point par lequel passe le plan |
Definition at line 65 of file plane.icc.
Affecte au plan l'équation Aa * x + Ab * y + Ac * z + Ad = 0.
- Parameters:
-
| Aa | Coefficient 'a' de l'équation du plan |
| Ab | Coefficient 'b' de l'équation du plan |
| Ac | Coefficient 'c' de l'équation du plan |
| Ad | Coefficient 'd' de l'équation du plan |
Definition at line 57 of file plane.icc.
Cette méthode permet de récupérer le point d'origine du point projeté par la méthode projectPoint.
- Parameters:
-
| APoint | Un point de coordonnées (x, y) |
| AProj | Un plan de projection dans lequel se trouve APoint |
- Returns:
- Le point du plan dont l'image est APoint par projection sur AProj
Definition at line 223 of file plane.icc.
Friends And Related Function Documentation
std::ostream& operator<< |
( |
std::ostream & |
AStream, |
|
|
const CPlane & |
APlane | |
|
) |
| | [friend] |
Affichage du plan APlane sur AStream.
Member Data Documentation
Coefficient D de l'équation du plan qui est Ax + By + Cz + D = 0.
Definition at line 284 of file plane.hh.
Normale au plan. Correspond aux coefficients A, B, C dans l'équation du plan qui est Ax + By + Cz + D = 0
Definition at line 278 of file plane.hh.
Norme de la normale au plan.
Definition at line 281 of file plane.hh.
The documentation for this class was generated from the following files:
- src/lib-gmapkernel/tools/geometry/plane.hh
- src/lib-gmapkernel/tools/geometry/plane.icc