Référence de la classe ObjetSimule

Structure de donnees de base des objets simules. Plus de détails...

#include <ObjetSimule.h>

Graphe d'héritage de ObjetSimule:

Inheritance graph
[légende]
Graphe de collaboration de ObjetSimule:

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

Fonctions membres publiques

 ObjetSimule (std::string fich_param)
void Param_mesh (std::string fich_param)
void setOpenFile ()
void setInit ()
void init ()
void CalculForce ()
void CalculAccel (Coord g)
void CalculPositionVitesseTps0 (float visco)
void CalculPositionVitesse (float visco)
void Simulation (Coord gravite, float viscosite, int Tps)
void AffichagePos (int tps)
void affiche ()
 Dessin du maillage. Methode invoquee par le graphe de scene.
void setNormals ()
void NormaleFace (Coord &normale, int a, int b, int c)
void setNSize (int size)
MeshGetMesh ()
int GetNbPart ()
const float * normals () const
const unsigned int nsize () const
Coord GetTissuSize ()
std::string GetFacette ()
virtual ~ObjetSimule ()

Attributs protégés

std::string _Fich_Points
 Fichier de donnees contenant les points.
std::string _Fich_FaceSet
 Fichier de donnees contenant les faceSet.
std::string _Fich_Masses
 Fichier de donnees contenant les masses.
float _delta_t
 Intervalle de temps.
int _Nb_Particules
 Nombre de particules.
int _Nb_Ressorts
 Nombre de ressorts.
Spring _RessOS
 Caracteristiques des ressorts.
Coord _Size
 Longueur du tissu dans chacune des directions x,y,z.
std::vector< CoordP
 Declaration pour les tableaux des particules pour les positions.
std::vector< CoordV
 Declaration pour les tableaux des particules pour les vitesses.
std::vector< CoordA
 Declaration pour les tableaux des particules pour les accelerations.
std::vector< float > M
 Declaration du tableau des masses des particules.
std::vector< CoordForce
 Declaration du tableau des forces des particules.
MeshMaillage
 Declaration du maillage.
float * _Normals
 Tableau des normales des sommets.
unsigned int _NSize
 Taille du tableau des normales.

Description détaillée

Structure de donnees de base des objets simules.

Définition à la ligne 31 du fichier ObjetSimule.h.


Documentation des contructeurs et destructeur

ObjetSimule::ObjetSimule ( std::string  fich_param  ) 

Constructeur

Recuperation des parametres mis dans le fichier

Définition à la ligne 49 du fichier ObjetSimule.cpp.

Références _RessOS, Param_mesh(), et Spring::SetFactAmorti().

Voici le graphe d'appel pour cette fonction :

ObjetSimule::~ObjetSimule (  )  [inline, virtual]

Destructeur de la class ObjetSimule

Définition à la ligne 168 du fichier ObjetSimule.h.

Références _Normals.


Documentation des fonctions membres

void ObjetSimule::Param_mesh ( std::string  fich_param  ) 

Lecture des parametres lies au maillage

Donnees du fichier contenant les parametres de l execution

Définition à la ligne 91 du fichier Param.cpp.

Références _delta_t, _Fich_FaceSet, _Fich_Masses, _Fich_Points, Spring::_Nu, Spring::_Raideur, _RessOS, GET_PARAM, et Properties::load().

Référencé par ObjetSimule().

Voici le graphe d'appel pour cette fonction :

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::setOpenFile (  ) 

Ouverture des fichiers de donnees

Ouverture des fichiers de donnees

Fichier de donnees des points

Fichier de donnees des faceSet

Fichier de donnees des masses

Définition à la ligne 92 du fichier ObjetSimule.cpp.

Références _Fich_FaceSet, _Fich_Masses, _Fich_Points, _Nb_Particules, et Maillage.

Référencé par init().

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::setInit (  ) 

Initialisation des tableaux et construction du maillage a partir des fichiers de donnees

Lecture de toutes les particules

Fichier de donnees des points

Ne considere pas le premier element du fichier de point (correspond au nb de particules deja lu)

Lecture des positions

remplissage de P

Lecture de toutes les masses

Lecture des masses

Remplissage de M

Calculs intermediaires

Vecteur nulle pour initialiser les vitesses, accel, forces des particules

Ajout de la particule dans le maillage

Message pour la fin de la lecture des positions et masses

Constructions de toutes les facettes du maillage

Nombre de facets

Remplissage de allfacets

Fermeture des fichiers de donnees

Modification des des normales

Message pour la fin de la creation du maillage

Définition à la ligne 145 du fichier ObjetSimule.cpp.

Références _Fich_FaceSet, _Fich_Masses, _Fich_Points, _Nb_Particules, Mesh::_NFacets, _Normals, _NSize, _RessOS, _Size, Mesh::_VIndices, Mesh::_VISize, A, Mesh::AddParticule(), Force, Mesh::GetParticule(), Coord::getX(), Coord::getY(), Coord::getZ(), M, Maillage, Mesh::MakeFace(), P, Particule::SetId(), setNormals(), Particule::SetPosition(), Coord::setX(), Coord::setY(), Coord::setZ(), et V.

Référencé par init().

Voici le graphe d'appel pour cette fonction :

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::init (  )  [virtual]

Initialisation de la simulation

Ouverture des fichiers de donnees de l objet a simuler

Initialisation des tableaux et construction du maillage a partir du fichier de donnees

Implémente Noeud.

Définition à la ligne 76 du fichier ObjetSimule.cpp.

Références setInit(), et setOpenFile().

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::CalculForce (  ) 

Calcul des forces appliquees sur les particules

Définition à la ligne 42 du fichier Calculs.cpp.

Référencé par Simulation().

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::CalculAccel ( Coord  g  ) 

Calcul des accelerations (avec ajout de la gravite aux forces)

Définition à la ligne 54 du fichier Calculs.cpp.

Référencé par Simulation().

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::CalculPositionVitesseTps0 ( float  visco  ) 

Calcul de la position et de la vitesse des particules au temps 0 pour la methode Leap Frog

Définition à la ligne 64 du fichier Calculs.cpp.

Référencé par Simulation().

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::CalculPositionVitesse ( float  visco  ) 

Calcul des positions et des vitesses

Définition à la ligne 73 du fichier Calculs.cpp.

Référencé par Simulation().

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::Simulation ( Coord  gravite,
float  viscosite,
int  Tps 
) [virtual]

Simulation de l objet

Modification des normales

Implémente Noeud.

Définition à la ligne 300 du fichier ObjetSimule.cpp.

Références CalculAccel(), CalculForce(), CalculPositionVitesse(), CalculPositionVitesseTps0(), et setNormals().

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::AffichagePos ( int  tps  ) 

Affichage des positions de chaque particule

Définition à la ligne 438 du fichier ObjetSimule.cpp.

Références _Nb_Particules, et P.

void ObjetSimule::affiche (  )  [virtual]

Dessin du maillage. Methode invoquee par le graphe de scene.

Dessin de l objet

Sauvegarde de la matrice courante

Affichage du maillage

Implémente Noeud.

Définition à la ligne 465 du fichier ObjetSimule.cpp.

void ObjetSimule::setNormals (  ) 

Modification du tableau des normales

Définition à la ligne 369 du fichier ObjetSimule.cpp.

Références Mesh::_NFacets, _Normals, _NSize, Mesh::_VIndices, Coord::getX(), Coord::getY(), Coord::getZ(), Maillage, et NormaleFace().

Référencé par setInit(), et Simulation().

Voici le graphe d'appel pour cette fonction :

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::NormaleFace ( Coord normale,
int  a,
int  b,
int  c 
)

Calcul de la normale a une face (a, b, c)

Définition à la ligne 337 du fichier ObjetSimule.cpp.

Références Coord::getX(), Coord::getY(), Coord::getZ(), P, Coord::setX(), Coord::setY(), et Coord::setZ().

Référencé par setNormals().

Voici le graphe d'appel pour cette fonction :

Voici le graphe d'appel pour cette fonction :

void ObjetSimule::setNSize ( int  size  )  [inline]

Modification de la taille du tableau des normales

Définition à la ligne 79 du fichier ObjetSimule.h.

Références _NSize.

Mesh* ObjetSimule::GetMesh (  )  [inline]

Acces au maillage de l objet

Définition à la ligne 82 du fichier ObjetSimule.h.

Références Maillage.

int ObjetSimule::GetNbPart (  )  [inline]

Acces au nombre de particules

Définition à la ligne 85 du fichier ObjetSimule.h.

Références _Nb_Particules.

const float* ObjetSimule::normals (  )  const [inline]

Pour acceder aux normales des sommets

Définition à la ligne 88 du fichier ObjetSimule.h.

Références _Normals.

const unsigned int ObjetSimule::nsize (  )  const [inline]

Pour acceder a la taille du tableau des normales

Définition à la ligne 91 du fichier ObjetSimule.h.

Références _NSize.

Coord ObjetSimule::GetTissuSize (  )  [inline]

Acces a la taille du tissu

Définition à la ligne 94 du fichier ObjetSimule.h.

Références _Size.

std::string ObjetSimule::GetFacette (  )  [inline]

Acces au nom du fichier des facettes

Définition à la ligne 97 du fichier ObjetSimule.h.

Références _Fich_FaceSet.


Documentation des données membres

std::string ObjetSimule::_Fich_Points [protected]

Fichier de donnees contenant les points.

Donnees relatives aux fichiers de donnees

Définition à la ligne 108 du fichier ObjetSimule.h.

Référencé par Param_mesh(), setInit(), et setOpenFile().

std::string ObjetSimule::_Fich_FaceSet [protected]

Fichier de donnees contenant les faceSet.

Définition à la ligne 111 du fichier ObjetSimule.h.

Référencé par GetFacette(), Param_mesh(), setInit(), et setOpenFile().

std::string ObjetSimule::_Fich_Masses [protected]

Fichier de donnees contenant les masses.

Définition à la ligne 114 du fichier ObjetSimule.h.

Référencé par Param_mesh(), setInit(), et setOpenFile().

float ObjetSimule::_delta_t [protected]

Intervalle de temps.

Donnees relatives a la simulation

Définition à la ligne 119 du fichier ObjetSimule.h.

Référencé par Param_mesh().

int ObjetSimule::_Nb_Particules [protected]

Nombre de particules.

Donnees relatives au maillage

Définition à la ligne 124 du fichier ObjetSimule.h.

Référencé par AffichagePos(), GetNbPart(), setInit(), et setOpenFile().

int ObjetSimule::_Nb_Ressorts [protected]

Nombre de ressorts.

Définition à la ligne 127 du fichier ObjetSimule.h.

Spring ObjetSimule::_RessOS [protected]

Caracteristiques des ressorts.

Définition à la ligne 130 du fichier ObjetSimule.h.

Référencé par ObjetSimule(), Param_mesh(), et setInit().

Coord ObjetSimule::_Size [protected]

Longueur du tissu dans chacune des directions x,y,z.

Définition à la ligne 133 du fichier ObjetSimule.h.

Référencé par GetTissuSize(), et setInit().

std::vector<Coord> ObjetSimule::P [protected]

Declaration pour les tableaux des particules pour les positions.

Structures de donnees pour les calculs

Définition à la ligne 138 du fichier ObjetSimule.h.

Référencé par AffichagePos(), NormaleFace(), et setInit().

std::vector<Coord> ObjetSimule::V [protected]

Declaration pour les tableaux des particules pour les vitesses.

Définition à la ligne 141 du fichier ObjetSimule.h.

Référencé par setInit().

std::vector<Coord> ObjetSimule::A [protected]

Declaration pour les tableaux des particules pour les accelerations.

Définition à la ligne 144 du fichier ObjetSimule.h.

Référencé par setInit().

std::vector<float> ObjetSimule::M [protected]

Declaration du tableau des masses des particules.

Définition à la ligne 147 du fichier ObjetSimule.h.

Référencé par setInit().

std::vector<Coord> ObjetSimule::Force [protected]

Declaration du tableau des forces des particules.

Définition à la ligne 150 du fichier ObjetSimule.h.

Référencé par setInit().

Mesh* ObjetSimule::Maillage [protected]

Declaration du maillage.

Définition à la ligne 153 du fichier ObjetSimule.h.

Référencé par GetMesh(), setInit(), setNormals(), et setOpenFile().

float* ObjetSimule::_Normals [protected]

Tableau des normales des sommets.

Définition à la ligne 156 du fichier ObjetSimule.h.

Référencé par normals(), setInit(), setNormals(), et ~ObjetSimule().

unsigned int ObjetSimule::_NSize [protected]

Taille du tableau des normales.

Définition à la ligne 159 du fichier ObjetSimule.h.

Référencé par nsize(), setInit(), setNormals(), et setNSize().


La documentation de cette classe a été générée à partir des fichiers suivants :
Généré le Thu Jan 24 19:12:08 2008 pour Animation 3D par  doxygen 1.5.1