GLam Collection version 0.4 -  ACCUEIL -  CLASSES -  HIERARCHIE -  MEMBRES -  EXEMPLES


Référence de la classe GLamSpring

Ressort. Plus de détails...

#include <glamspring.h>

Graphe d'héritage de GLamSpring:
GLamObject

Liste de tous les membres

Fonctions membres publiques

 GLamSpring ()
 GLamSpring (double diameter, double thickness=0.1, int spins=10)
 GLamSpring (const GLamSpring &obj)
 ~GLamSpring ()
GLamSpringoperator= (const GLamSpring &obj)
void create ()
void update ()
void setColor (float r, float g, float b, bool shiny=false)
void setShiny (bool shiny=true)
void setSimpleColor (bool simpleColor=true)
void setMaterial (float mat[10])
void setThickness (double thickness)
void setSelected (bool selected=true)
double length () const
double minLength () const
void setLength (double length)
double diameter () const
double internalDiameter () const
void setDiameter (double diameter)
int spins () const
void setSpins (int spins)
double resolution () const
void setResolution (double resolution)

Description détaillée

Ressort.

La classe GLamSpring permet la construction de ressorts cylindriques avec, aux extrémités, 3/4 de tour de fil parallèle au plan XY. Un ressort est défini par son diamètre extérieur, sa longueur, le diamètre du fil et le nombre de spires. Le ressort est posé sur le plan XY, en élévation sur l'axe Z.


Propriétés

length : Longueur totale du ressort. La méthode minLength() retourne la valeur calculée de longueur du ressort lorsqu'il est complètement compressé.

diameter : Diamètre extérieur du ressort (0.1 par défaut). La méthode internalDiameter() donne le diamètre intérieur en tenant compte du diamètre du fil.

spins : Nombre de spires (tours complets du fil). La valeur minimale est fixée à 3 spires (10 par défaut).

resolution : Résolution du dessin. Cette propriété défini la taille maximale des facettes radiales et axiales. (0.05 par défaut). Une résolution inutilement élevée entraine un temps de calcul important, surtout si le ressort est animé...

thickness : Diamètre du fil. Propriété maintenue par la classe de base GLamObject.


Exemple

// attributs

GLamSpring*   spring1 ;
GLamSpring*   spring2 ;

// construction

spring1 = new GLamSpring( 2, 0.2 ) ;
spring1->setLength( 5 ) ;
spring1->setSimpleColor( false ) ;
spring1->setThickness( 0.12 ) ;
spring1->setResolution( 0.02 ) ;

spring2 = new GLamSpring( *spring1 ) ;
spring2->setDiameter( 1.2 ) ;
spring2->setLength( 3 ) ;
spring2->setColor(238, 202, 205, true ) ;

// projection sur la scène

glPushMatrix() ;
  spring1->draw() ;
  glTranslated( -6, -2, 3 ) ;
  glRotated(45, 1, 1, 0 ) ;
  spring2->draw() ;
glPopMatrix() ;
glamspring_example.png



Documentation des constructeurs et destructeur

GLamSpring::GLamSpring (  ) 
Constructeur par défaut.

Le constructeur par défaut crée un ressort compressé de 3 spires et de diamètre 0.5 , apparaissant sous sa forme fil de fer (wireframe). Cet état est révocable lors d'une modification dimensionnelle de l'objet ou par copie d'un autre objet de même classe (cf. sélecteur isDefault() de la classe de base).
glamspring_default.png
GLamSpring::GLamSpring ( double  diameter,
double  thickness = 0.1,
int  spins = 10 
)

Constructeur.

GLamSpring::GLamSpring ( const GLamSpring obj  ) 

Constructeur de copie.

GLamSpring::~GLamSpring (  ) 

Destructeur.


Documentation des fonctions membres

void GLamSpring::create (  )  [virtual]

Méthode de dessin utilisée par la classe de base pour générer la display list de l'objet. Les programmes clients ne doivent normalement pas invoquer directement cette méthode, mais préférer la méthode draw() qui exploite la primitive OpenGL glCallList() .

Implémente GLamObject.

double GLamSpring::diameter (  )  const [inline]

Propriété diameter.

double GLamSpring::internalDiameter (  )  const [inline]

Propriété diameter.

double GLamSpring::length (  )  const [inline]

Propriété length.

double GLamSpring::minLength (  )  const [inline]

Propriété length.

GLamSpring & GLamSpring::operator= ( const GLamSpring obj  ) 

Surcharge de l'opérateur d'affectation.

double GLamSpring::resolution (  )  const [inline]

Propriété resolution.

void GLamSpring::setColor ( float  r,
float  g,
float  b,
bool  shiny = false 
) [virtual]

Propriété color.

Réimplémentée à partir de GLamObject.

void GLamSpring::setDiameter ( double  diameter  ) 

Propriété diameter.

void GLamSpring::setLength ( double  length  ) 

Propriété length.

void GLamSpring::setMaterial ( float  mat[10]  )  [virtual]

Propriété material.

Réimplémentée à partir de GLamObject.

void GLamSpring::setResolution ( double  resolution  ) 

Propriété resolution.

void GLamSpring::setSelected ( bool  selected = true  )  [virtual]

Force ou non l'état 'sélectionné' de l'objet. Le cas échéant, celui-ci est alors regénéré avec un aspect cyan semi-transparent.

Réimplémentée à partir de GLamObject.

void GLamSpring::setShiny ( bool  shiny = true  )  [virtual]

Propriété shiny.

Réimplémentée à partir de GLamObject.

void GLamSpring::setSimpleColor ( bool  simpleColor = true  )  [virtual]

Propriété simpleColor.

Réimplémentée à partir de GLamObject.

void GLamSpring::setSpins ( int  spins  ) 

Propriété spins.

void GLamSpring::setThickness ( double  thickness  )  [virtual]

Propriété thickness.

Réimplémentée à partir de GLamObject.

int GLamSpring::spins (  )  const [inline]

Propriété spins.

void GLamSpring::update (  )  [virtual]

Fixation du mode de rendu de l'objet et fabrication de la display list. Mise à jour de l'identifiant de l'objet dans la liste des objets.

Voir également:
isUpdate(), updateNeeded()

Réimplémentée à partir de GLamObject.


Doxygen version 1.6.3 - GLam Collection - (c) 2009-2010 Alain Menu