Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

Face Class Reference

Une face est la brique de base de l'affichage 3D. More...

#include <face.h>

List of all members.

Public Member Functions

 Face ()
 ~Face ()
void Set (char *name, int idControl, int idFace, BOOL view)
BOOL ConfigDynamicLayout (Face *father, double xCenter, double yCenter, double xSize, double ySize)
 place la face par rapport a son pere, configure la partie percent

void ConfigStaticLayout (double xCenter, double yCenter, double zCenter, double xSize, double ySize)
void ConfigCenter (int xCenter, int yCenter)
void Move (double x, double y, double z)
void MoveTo (double x, double y, double z)
void MovingInside ()
 On se deplace dans la face.

void Zero ()
void operator= (Face &source)
void Draw (BOOL onPicking)
void GetCorners (Point3D< double > *corners)
 Donne les 4 coins de la face en coordonnée ecrant.

void ComputeLayout ()

Public Attributes

Recorder childRecorder
 objet 3D a affiché quelque soit le mode d'affichage de la face (peremet d'afficher le curseur par example)

int idFace
int idControl
 identifiant de la face ne cours

BOOL noPicking
 ne pas utiliser dans le picking

BOOL view
 doit etre visualisée

BOOL blending
 0=non 1=oui -1=ne change rien a l'ancien

MyString name
 info pour le picking

Text3Dtext
 text qui dois etre affiché

Material material
 couleurs

Texturetexture
 pointeur sur une texture

Curve curve
 parametre d'incurvation

float line
 taille de la ligne de detour =0 pas de ligne, si anti alise active la taille ne change rien donc 0 ou 1 dans ce cas

Material lineMaterial
 couleurs de la ligne

BOOL antialias
 antialiase activée

BOOL fog
 brouillard activée

Point2D< LayoutDoublesize
 taille logic de la face

Point2D< int > center
 centre logic par rapport a la face courante {-1,0,1}

Point3D< LayoutDoubleposition
 centre logic par rapport a la face conteneur

Point3D< GLdouble > scale
 redimentionement de la face

Point3D< GLdouble > angle
 angle de cette face par rapport a la face conteneur

Point2D< GLdouble > computeSize
 taile une fois calculé

Point2D< GLdouble > computeCenter
 valeur du centre calculé

Point3D< GLdouble > computePosition
 valeur de la position calculé

double ratioXY
 ratio entre les X et Y


Detailed Description

Une face est la brique de base de l'affichage 3D.

Parametres:

Definition at line 46 of file face.h.


Constructor & Destructor Documentation

Face::Face  ) 
 

Definition at line 272 of file face.cpp.

References Zero().

Face::~Face  ) 
 

Definition at line 277 of file face.cpp.


Member Function Documentation

void Face::ComputeLayout  ) 
 

Definition at line 75 of file face.cpp.

References Layout< T >::Compute(), computeCenter, computePosition, computeSize, position, scale, Point2D< int >::x, Point3D< LayoutDouble >::x, Point3D< GLdouble >::x, Point2D< LayoutDouble >::x, Point2D< GLdouble >::x, Point2D< int >::y, Point3D< LayoutDouble >::y, Point3D< GLdouble >::y, Point2D< LayoutDouble >::y, Point2D< GLdouble >::y, Point3D< LayoutDouble >::z, and Point3D< GLdouble >::z.

Referenced by Primitive::Draw(), and Cursor::Draw().

void Face::ConfigCenter int  xCenter,
int  yCenter
 

Definition at line 55 of file face.cpp.

References Point2D< int >::x, and Point2D< int >::y.

BOOL Face::ConfigDynamicLayout Face father,
double  xPosition,
double  yPosition,
double  xSize,
double  ySize
 

place la face par rapport a son pere, configure la partie percent

Definition at line 38 of file face.cpp.

References BOOL(), computeSize, position, Layout< T >::SetPercent(), Point2D< LayoutDouble >::x, Point2D< GLdouble >::x, Point3D< LayoutDouble >::x, Point2D< LayoutDouble >::y, Point2D< GLdouble >::y, and Point3D< LayoutDouble >::y.

Referenced by Primitive::AddFace().

void Face::ConfigStaticLayout double  xCenter,
double  yCenter,
double  zCenter,
double  xSize,
double  ySize
 

Definition at line 48 of file face.cpp.

References Layout< T >::constValue, MoveTo(), Point2D< LayoutDouble >::x, and Point2D< LayoutDouble >::y.

Referenced by Primitive::AddFace().

void Face::Draw BOOL  onPicking  ) 
 

Affiche la face et fait les translation,rotation et applique le materiel quelque soit le mode d'affichage.

La fonction pre-suppose que les coordonnée gl sont centré

Remarque: ne pas oublier de lancer

avant

Todo:
transposé tout dans le text->draw

Definition at line 109 of file face.cpp.

References antialias, blending, ce, childRecorder, computeSize, curve, Text3D::Draw(), Curve::Draw(), Text3D::DrawPicking(), Region::enable, ControlEngine::fog, Texture::id, idControl, idFace, Curve::IsActive(), Fog::isEnable, line, lineMaterial, noPicking, Recorder::Play(), ratioXY, Screen::region, ControlEngine::RegionAdd(), ControlEngine::screenMain, Text3D::SetClipping(), Texture::SetCoord(), BasicText3D::SetRatioXY(), Material::Use(), view, Point2D< GLdouble >::x, and Point2D< GLdouble >::y.

Referenced by Primitive::Draw(), and Cursor::Draw().

void Face::GetCorners Point3D< double > *  corners  ) 
 

Donne les 4 coins de la face en coordonnée ecrant.

Definition at line 259 of file face.cpp.

References ce, computeSize, ControlEngine::RegionGet(), Point2D< GLdouble >::x, and Point2D< GLdouble >::y.

void Face::Move double  x,
double  y,
double  z
 

Definition at line 61 of file face.cpp.

References Layout< T >::constValue, position, Point3D< LayoutDouble >::x, Point3D< LayoutDouble >::y, and Point3D< LayoutDouble >::z.

void Face::MoveTo double  x,
double  y,
double  z
 

Definition at line 68 of file face.cpp.

References Layout< T >::constValue, position, Point3D< LayoutDouble >::x, Point3D< LayoutDouble >::y, and Point3D< LayoutDouble >::z.

Referenced by ConfigStaticLayout(), and Cursor::Draw().

void Face::MovingInside  ) 
 

On se deplace dans la face.

Definition at line 251 of file face.cpp.

References angle, computeCenter, computePosition, Point3D< GLdouble >::glRotated(), Point3D< GLdouble >::glTranslated(), Point2D< GLdouble >::x, and Point2D< GLdouble >::y.

Referenced by Primitive::Draw(), and Cursor::Draw().

void Face::operator= Face source  ) 
 

Definition at line 317 of file face.cpp.

References angle, antialias, blending, computeCenter, computePosition, computeSize, curve, idControl, idFace, line, lineMaterial, noPicking, position, ratioXY, scale, src, and view.

void Face::Set char *  name,
int  idControl,
int  idFace,
BOOL  view
 

Definition at line 27 of file face.cpp.

References idControl, idFace, and view.

Referenced by Primitive::AddFace().

void Face::Zero  ) 
 

Definition at line 283 of file face.cpp.

References angle, antialias, blending, childRecorder, computeCenter, computePosition, computeSize, curve, Recorder::Delete(), idControl, idFace, line, lineMaterial, noPicking, position, ratioXY, scale, view, Curve::Zero(), Material::Zero(), Point3D< GLdouble >::Zero(), Point2D< GLdouble >::Zero(), Point3D< LayoutDouble >::Zero(), Point2D< int >::Zero(), and Point2D< LayoutDouble >::Zero().

Referenced by Face().


Member Data Documentation

Point3D<GLdouble> Face::angle
 

angle de cette face par rapport a la face conteneur

Definition at line 70 of file face.h.

Referenced by Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), MovingInside(), operator=(), Cursor::Rotate(), and Zero().

BOOL Face::antialias
 

antialiase activée

Definition at line 62 of file face.h.

Referenced by Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), and Zero().

BOOL Face::blending
 

0=non 1=oui -1=ne change rien a l'ancien

Definition at line 54 of file face.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Config(), Tip::Create(), Draw(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), operator=(), Control::SetAlphaBlending(), and Zero().

Point2D<int> Face::center
 

centre logic par rapport a la face courante {-1,0,1}

Definition at line 67 of file face.h.

Referenced by ValueEditors::MakeElemFaceStruct().

Recorder Face::childRecorder
 

objet 3D a affiché quelque soit le mode d'affichage de la face (peremet d'afficher le curseur par example)

Definition at line 50 of file face.h.

Referenced by Cursor::ApplyType(), Draw(), and Zero().

Point2D<GLdouble> Face::computeCenter
 

valeur du centre calculé

Definition at line 72 of file face.h.

Referenced by ComputeLayout(), ValueEditors::MakeElemFaceStruct(), MovingInside(), operator=(), and Zero().

Point3D<GLdouble> Face::computePosition
 

valeur de la position calculé

Definition at line 73 of file face.h.

Referenced by ComputeLayout(), ValueEditors::MakeElemFaceStruct(), MovingInside(), operator=(), and Zero().

Point2D<GLdouble> Face::computeSize
 

taile une fois calculé

Definition at line 71 of file face.h.

Referenced by ComputeLayout(), Config(), ConfigDynamicLayout(), Draw(), GetCorners(), ValueEditors::MakeElemFaceStruct(), ResizingAndRotateControl::OnHover(), operator=(), TaskWindow::Refresh(), and Zero().

Curve Face::curve
 

parametre d'incurvation

Definition at line 59 of file face.h.

Referenced by Draw(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), operator=(), and Zero().

BOOL Face::fog
 

brouillard activée

Definition at line 63 of file face.h.

Referenced by ValueEditors::MakeElemFaceStruct().

int Face::idControl
 

identifiant de la face ne cours

Definition at line 51 of file face.h.

Referenced by Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), Set(), and Zero().

int Face::idFace
 

Definition at line 51 of file face.h.

Referenced by Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), Set(), and Zero().

float Face::line
 

taille de la ligne de detour =0 pas de ligne, si anti alise active la taille ne change rien donc 0 ou 1 dans ce cas

Definition at line 60 of file face.h.

Referenced by Draw(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), operator=(), Control::SetLines(), and Zero().

Material Face::lineMaterial
 

couleurs de la ligne

Definition at line 61 of file face.h.

Referenced by Draw(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), operator=(), Control::SetLines(), and Zero().

Material Face::material
 

couleurs

Definition at line 57 of file face.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Config(), Tip::Create(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), Control::SetAlphaBlending(), and Tutorial::UniversDemo::SetFace().

MyString Face::name
 

info pour le picking

Definition at line 55 of file face.h.

Referenced by ControlEngine::ControlEngine(), ValueEditors::MakeElemFaceStruct(), and Picking::Test().

BOOL Face::noPicking
 

ne pas utiliser dans le picking

Definition at line 52 of file face.h.

Referenced by Config(), Draw(), operator=(), and Zero().

Point3D<LayoutDouble> Face::position
 

centre logic par rapport a la face conteneur

Definition at line 68 of file face.h.

Referenced by Control::ChangeDirection(), ComputeLayout(), Config(), ConfigDynamicLayout(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), Move(), MoveTo(), operator=(), Tutorial::UniversDemo::UniversDemo(), and Zero().

double Face::ratioXY
 

ratio entre les X et Y

Definition at line 74 of file face.h.

Referenced by Primitive::Draw(), Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), and Zero().

Point3D<GLdouble> Face::scale
 

redimentionement de la face

Definition at line 69 of file face.h.

Referenced by Primitive::Draw(), and ValueEditors::MakeElemFaceStruct().

Point2D<LayoutDouble> Face::size
 

taille logic de la face

Definition at line 66 of file face.h.

Referenced by Control::ChangeDirection(), Config(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), and Tutorial::UniversDemo::UniversDemo().

Text3D* Face::text
 

text qui dois etre affiché

Definition at line 56 of file face.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Tip::Create(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), Tutorial::BaseDemo::OnWinOut(), Tutorial::UniversDemo::SetFace(), and Tutorial::WindowDemo::WindowDemo().

Texture* Face::texture
 

pointeur sur une texture

Definition at line 58 of file face.h.

Referenced by Cursor::ApplyType(), TreeView::ConfigFacesPlus(), Tutorial::FaceDemo::FaceDemo(), TextTexture::MajTexture(), and ValueEditors::MakeElemFaceStruct().

BOOL Face::view
 

doit etre visualisée

Definition at line 53 of file face.h.

Referenced by Cursor::ApplyType(), Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), Set(), and Zero().


The documentation for this class was generated from the following files:
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6