Page principale   Hiérarchie des classes   Liste des composants   Liste des fichiers   Composants   Déclarations   Pages associées  

Référence de la classe GD_Objet

#include <GD_Objet.h>

Graphe d'héritage de la classe GD_Objet

Inheritance graph
[Légende]
Diagramme de collaboration de GD_Objet:

Collaboration graph
[Légende]
Liste de tous les membres

Description détaillée

Cette classe est à la base de toutes les autres.


Accesseurs

void setContainer (Container *_container)
 Ajuste le container.

void getContainer (Container **_container)
 Donne le container.

virtual void getTopLevelContainer (Container **_container)
 Donne le container le plus haut dans la hierarchie.

void setUserData (void *_userData)
 Ajuste l'attribut userData.

void * getUserData (void)
 Renvoi l'attribut userData.

void setType (type_t type)
 Ajuste le type.

type_t getType (void)
 Renvoi le type.

unsigned short getId (void)
 Renvoie l'id.

void getProperty (property_t *_property)
 Donne les propriétés.

bool serialise (char *chaine=0, int taille=0)
 Sérialise le GD_Objet.

bool unSerialise (char *chaine=0, int taille=0, map< GD_Objet *, GD_Objet * > *gdobjetMap=0)
 Désérialize.


Membres publics

Constructeur/Destructeur
 GD_Objet (Container *container=0)
 Constructeur par défaut.
Attention:
Seul les GD_Objet de type Univers peuvent être instancié sans parametre. Tous les autres doivent fournir un container non-nul;.


virtual ~GD_Objet (void)
 Destructeur.

Positionement
Fonctions relatives au positionement dans l'espace.

À Faire:
Proposer des fonctions utilisan les quaternions.


void moveOf (double x, double y, double z)
 Déplace le GD_Objet.

virtual void setPosition (double *position)
 Ajuste la position.

virtual void getPosition (double *position)
 Donne la position.

void rotateOf (double angle, double axeX, double axeY, double axeZ)
 Tourne le GD_Objet.

virtual void setRotation (double *rotation)
 Ajuste l'orientation.

void setRotation (double angleRadian, double *axe)
 Ajuste l'orientation.

void setRotation (double angleRadian, double ax, double ay, double az)
 Ajuste l'orientation.

void setRotation (int angleDegre, double *axe)
 Ajuste l'orientation.

void setRotation (int angleDegre, double ax, double ay, double az)
 Ajuste l'orientation.

virtual void getRotation (double *rotation)
 Donne l'orientation.

virtual void setEchelle (double *echelle)
 Ajuste les dimensions.

virtual void getEchelle (double *echelle)
 Donne les dimensions.

void scaleOf (double x=1, double y=1, double z=1)
 Redimensionne.

virtual void getAABB (double *aabb)
 Donne l'AABB.

bool isIn (frustum_t *frustum)
 Indique la situation.

Apparence
Fonctions relatives à l'apparence.

bool isVisible (void)
 Teste si le GD_Objet est visible.

void setVisible (void)
 Rend visible.

void setInvisible (void)
 Rend invisible.

bool isSelected (void)
 Teste la selection.

void setSelected (void)
 Selectionne.

void setNotSelected (void)
 Déselectionne.

void setCouleur (unsigned char r, unsigned char v, unsigned char b)
 Ajuste la couleur.

void setCouleur (unsigned char *couleur)
 Ajuste la couleur.

void getCouleur (unsigned char *couleur)
 Donne la couleur.


Attributs Protégés

Containercontainer
 C'est un pointeur vers le container.

unsigned short id
 C'est un entier identifiant de maniere unique le GD_Objet.

type_t type
 C'est le type du GD_Objet.

void * userData
 C'est un pointeur vers une donnée quelconque.

bool visible
 Indique si le GD_Objet est visible.

bool selected
 Indique si le GD_Objet est selectioné.

unsigned char couleur [3]
 C'est un tableau avec les composantes r v b du GD_Objet (0-255).


Attributs Protégés Statiques

unsigned short numGDObjets
 C'est le compteur de GD_Objets instanciés.


Documentation des contructeurs et destructeurs

GD_Objet Container   container = 0
 

Instancie un GD_Objet.

À Faire:
ameliorer le controle du paramètre.
Paramètres:
container est un pointeur vers le conteneur du GD_Objet instancié.


Documentation des méthodes

void setContainer Container   _container
 

Fonction permettant d'ajuster le container du GD_Objet.

Paramètres:
_container nouveau container

void getContainer Container **    _container
 

Fonction permettant d'obtenir le container du GD_Objet.

Paramètres:
_container pointeur vers un pointeur de container

virtual void getTopLevelContainer Container **    _container [virtual]
 

Fonction permettant d'obtenir le container du GD_Objet le plus haut dans la hierarchie.Ce container sera un univers. D'ailleur cette fonction est redéfinie dans la classe Univers.

Paramètres:
_container pointeur vers un pointeur de container

Redéfinie dans Univers.

void setUserData void *    _userData
 

Fonction permettant d'associer à un GD_Objet des données personnelles.

Paramètres:
_userData pointeur vers les donner à enregistrer.

void* getUserData void   
 

Fonction permettant de récupérer les données personnelles.

Renvoie:
un pointeur vers un type quelconque.

void setType type_t    type
 

Fonction permettant d'ajuster le type du GD_Objet.

Paramètres:
type est le nouveau type.

type_t getType void   
 

Fonction permettant de récupérer le type du GD_Objet.

Renvoie:
une valeur correspondante au type de type type_t.

unsigned short getId void   
 

Fonction permettant de récupérer l'id du GD_Objet.

Renvoie:
l'id du GD_Objet.

void getProperty property_t   _property
 

Fonction permettant de récupérer les propriétés du GD_Objet.

Paramètres:
_property un pointeur dans lequel la fonction stockera le résultat.

bool serialise char *    chaine = 0,
int    taille = 0
 

Fonction permettant de ranger dans une chaine de 256 charactères les propriétés du GD_Objet afin de l'envoer à travers le réseau par exemple.

Renvoie:
true si la sérialisation a réussie, false sinon.
Paramètres:
chaine est un pointeur vers la chaine à écrire.
taille est la longeur de la chaine vers laquelle chaine pointe.
Attention:
La taille doit etre correctement fixée.

bool unSerialise char *    chaine = 0,
int    taille = 0,
map< GD_Objet *, GD_Objet * > *    gdobjetMap = 0
[static]
 

Fonction permettant d'ajuster les propriété du GD_Objet en fonction d'une chain de charactère. Le premier champ (type) n'est pas pris en compte.

Renvoie:
true si la désérialisation a réussie, false sinon.
Paramètres:
chaine est un pointeur vers la chaine à lire.
taille est la longeur de la chaine vers laquelle chaine.
gdobjetMap est une liste de correspondance entre pointeur de GD_Objets.
Attention:
La taille doit etre correctement fixée.

void moveOf double    x,
double    y,
double    z
 

Fonction permettant de déplacer le GD_Objet suivant x, y et z.

Paramètres:
x déplacement selon x.
y déplacement selon y.
z déplacement selon z.

virtual void setPosition double *    position [virtual]
 

Fonction permettant d'ajuster la position du GD_Objet.

Paramètres:
position matrice (1 ligne)X(3 colonnes) spécifiant les nouvelles coordonnées cartésiennes du GD_Objet

Redéfinie dans Container, Glissiere, Pivot, Plan, et Solide.

virtual void getPosition double *    position [virtual]
 

Fonction permettant d'obtenir la position du GD_Objet.

Paramètres:
position matrice (1 ligne)(3 colonnes) que la fonction rempliera avec les coordonnées cartésiennes du GD_Objet.
Attention:
Cette methode donne par défaut une position située à l'origine. Elle devra donc imperativement être redéfinie dans la descendance.

Redéfinie dans Container, Glissiere, Pivot, Plan, et Solide.

void rotateOf double    angle,
double    axeX,
double    axeY,
double    axeZ
 

Fonction permettant de tourner le GD_Objet autour de son centre de gravité selon un axe et un angle donné.

Paramètres:
angle angle en radian.
axeX orientation de l'axe de rotation selon x
axeY orientation de l'axe de rotation selon y
axeZ orientation de l'axe de rotation selon z

virtual void setRotation double *    rotation [virtual]
 

Fonction permettant d'ajuster l'orientation du GD_Objet.

Paramètres:
rotation matrice (3 lignes)(4 colonnes) spécifiant la matrice de rotation du GD_Objet

Redéfinie dans Container, Glissiere, Pivot, Plan, et Solide.

void setRotation double    angleRadian,
double *    axe
 

Fonction permettant d'ajuster l'orientation du GD_Objet en fonction de l'axe de rotation et de l'angle en radian.

Paramètres:
angleRadian est l'angle de rotation en radian
axe est le vecteur définissant l'axe de rotation.

void setRotation double    angleRadian,
double    ax,
double    ay,
double    az
 

Fonction permettant d'ajuster l'orientation du GD_Objet en fonction de l'axe de rotation et de l'angle en radian.

Paramètres:
angleRadian est l'angle de rotation en radian
ax est la composant x du vecteur de rotation.
ay est la composant y du vecteur de rotation.
az est la composant z du vecteur de rotation.

void setRotation int    angleDegre,
double *    axe
 

Fonction permettant d'ajuster l'orientation du GD_Objet en fonction de l'axe de rotation et de l'angle en radian.

Paramètres:
angleDegre est l'angle de rotation en degré
axe est le vecteur définissant l'axe de rotation.

void setRotation int    angleDegre,
double    ax,
double    ay,
double    az
 

Fonction permettant d'ajuster l'orientation du GD_Objet en fonction de l'axe de rotation et de l'angle en radian.

Paramètres:
angleDegre est l'angle de rotation en degré
ax est la composant x du vecteur de rotation.
ay est la composant y du vecteur de rotation.
az est la composant z du vecteur de rotation.

virtual void getRotation double *    rotation [virtual]
 

Fonction permettant d'obtenir l'orientation du GD_Objet.

Paramètres:
rotation matrice (3 ligne3)(4 colonnes) que la fonction rempliera avec la matrice de rotation du GD_Objet.
Attention:
Cette methode donne par défaut une matrice identitée (donc une rotation nulle). Elle devra donc imperativement être redéfinie dans la descendance.

Redéfinie dans Container, Glissiere, Pivot, Plan, et Solide.

virtual void setEchelle double *    echelle [virtual]
 

Fonction permettant d'ajuster les dimensions du GD_Objet.

Paramètres:
echelle est un pointeur vers un tableau de 3 doubles.

Redéfinie dans Boite, Ccylindre, Container, Glissiere, Pivot, et Plan.

virtual void getEchelle double *    echelle [virtual]
 

Fonction permettant de récupérer les dimensions du GD_Objet.

Paramètres:
echelle est un pointeur vers un tableau de 3 doubles.
Attention:
Cette methode donne par défaut une matrice remplie de 1 (donc une mise à l'echelle sans effet). Elle devra donc imperativement être redéfinie dans la descendance.

Redéfinie dans Boite, Ccylindre, Container, Glissiere, Pivot, et Plan.

void scaleOf double    x = 1,
double    y = 1,
double    z = 1
 

Fonction permettant de redimensionner le GD_Objet.

Paramètres:
x proportion du redimensionnement selon x.
y proportion du redimensionnement selon y.
z proportion du redimensionnement selon z.

virtual void getAABB double *    aabb [virtual]
 

Fonction permettant d'obtenir la boite englobante alignée avec les axes (Axis Aligned Bounding Box) du GD_Objet.

Paramètres:
aabb matrice (1 ligne)(6 colonnes) que la fonction rempliera avec les coordonées de l'aabb du GD_Objet.

Redéfinie dans Collider, Container, Joint, et Solide.

bool isIn frustum_t   frustum
 

Fonction permettant de savoir si le GD_Objet est dans le volume délimité par le frustum.

Paramètres:
frustum corresponant au volume à tester.
Renvoie:
"true" si le GD_Objet est à l'interieur du frustum, "false" sinon.

bool isVisible void   
 

Fonction permettant de savoir si le GD_Objet est visible.

Renvoie:
"true" si le GD_Objet est visible, "false" sinon.

void setVisible void   
 

Fonction permettant de rendre visible le GD_Objet.

void setInvisible void   
 

Fonction permettant de rendre invisible le GD_Objet.

bool isSelected void   
 

Fonction permettant de savoir si le GD_Objet est selectionne ou pas.

Renvoie:
"true" si le GD_Objet est selectionné, "false" sinon.

void setSelected void   
 

Fonction permettant de selectionner le GD_Objet.

void setNotSelected void   
 

Fonction permettant de deselectionner le GD_Objet.

void setCouleur unsigned char    r,
unsigned char    v,
unsigned char    b
 

Fonction permettant d'ajuster la couleur du GD_Objet.

Paramètres:
r composante rouge (0-255).
v composante verte (0-255).
b composante bleue (0-255).

void setCouleur unsigned char *    couleur
 

Fonction permettant d'ajuster la couleur du GD_Objet.

Paramètres:
couleur tableau de composantes rvb (0-255).

void getCouleur unsigned char *    couleur
 

Fonction permettant d'obtenir la couleur du GD_Objet.

Paramètres:
couleur matrice (1 ligne)(3 colonnes) que la fonction rempliera avec la couleur du GD_Objet.


La documentation associée à cette classe a été générée à partir du fichier suivant :
Cette documentation a été généré le 24 May 2003 par Doxygen version 1.3-rc3.
Pour tout renseignements :