![]() |
GLam Collection version 0.4 - | ACCUEIL - CLASSES - HIERARCHIE - MEMBRES - EXEMPLES |
Elément 2D circulaire. Plus de détails...
#include <glamcircle.h>
Fonctions membres publiques | |
GLamCircle () | |
GLamCircle (double diameter, int numSectors=20) | |
GLamCircle (const GLamCircle &obj) | |
~GLamCircle () | |
GLamCircle & | operator= (const GLamCircle &obj) |
void | create () |
double | diameter () const |
void | resize (double diameter) |
void | setDiameter (double diameter) |
int | numSectors () const |
void | setNumSectors (int numSectors) |
Elément 2D circulaire.
Cette classe permet de construire des éléments 2D circulaires. La forme extérieure est définie sous forme d'un polygone régulier dans le plan 0XY et centré sur l'origine.
L'épaisseur correspond ici à la différence entre rayon extérieur et rayon intérieur. Une épaisseur non nulle permet de créer un disque troué de diamètre intérieur variable...
La classe GLamCircle permet donc aussi la création de disques 2D en fixant la propriété épaisseur à la valeur diamètre / 2 ou en la laissant à la valeur par défaut 0.0.
diameter
: diamètre extérieur.
numSectors
: nombre de faces du polygone régulier (20
par défaut).
// attributs GLamCircle* circ1 ; GLamCircle* circ2 ; GLamCircle* circ3 ; // construction circ1 = new GLamCircle( 3, 6 ) ; circ2 = new GLamCircle( *circ1 ) ; circ2->setColor(0.2, 0.4, 0.8, true ) ; circ2->setThickness( 0.3 ) ; circ3 = new GLamCircle( 4, 120 ) ; circ3->setColor(0.7, 0.6, 0.2 ) ; circ3->setThickness( circ3->diameter() * 0.15 ) ; // projection sur la scène glPushMatrix() ; circ1->draw() ; glTranslated( -1, -5, 1 ) ; circ2->draw() ; glTranslated( -4, 2, 0 ) ; glRotated(60, 0, 0, 1 ) ; glScaled(1.6, 1, 1 ) ; circ3->draw() ; glPopMatrix() ; | ![]() |
GLamCircle::GLamCircle | ( | ) |
Constructeur par défaut. Le constructeur par défaut crée un octogone de diamètre extérieur 1.0, apparaissant sous sa forme fil de fer (wireframe). Cet état est révoqué lorsque l'objet est redimensionné ou par copie d'un autre objet de même classe (cf. sélecteur isDefault() de la classe de base). | ![]() |
GLamCircle::GLamCircle | ( | double | diameter, | |
int | numSectors = 20 | |||
) |
Constructeur. L'argument diameter détermine le diamètre extérieur de l'élément 2D et l'argument numSectors le nombre de facettes du polygone régulier définissant le contour. La différence entre rayon extérieur et rayon intérieur, nommée ici épaisseur de l'élément, est fixée par défaut à 0.0 (propriété thickness maintenue par la classe de base GLamObject).
GLamCircle::GLamCircle | ( | const GLamCircle & | obj | ) |
Constructeur de copie.
GLamCircle::~GLamCircle | ( | ) |
Destructeur.
void GLamCircle::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 GLamCircle::diameter | ( | ) | const [inline] |
Propriété diameter.
int GLamCircle::numSectors | ( | ) | const [inline] |
Propriété numSectors.
GLamCircle & GLamCircle::operator= | ( | const GLamCircle & | obj | ) |
Surcharge de l'opérateur d'affectation.
void GLamCircle::resize | ( | double | diameter | ) |
Propriété diameter.
void GLamCircle::setDiameter | ( | double | diameter | ) |
Propriété diameter.
void GLamCircle::setNumSectors | ( | int | numSectors | ) |
Propriété numSectors.