Previous Up Next
Retour à la page personnelle de Bernard Parisse.

12  Les graphiques

Il y a plusieurs types de graphiques: dans le plan (2-d), dans l’espace (3-d), qui peuvent faire partie ou non d’une figure géométrique. Pour créer les types de graphes les plus courants, vous pouvez utiliser les assistants du menu Graphes qui se chargera de créer un niveau avec une ligne de commande, de le remplir et de le valider. Ainsi une commande pour tracer un graphe de fonction :
plotfunc(sin(x),x=-5..5) affichera un graphe 2-d (qui ne fait pas partie d’une figure),
plotfunc(x^2-y^2,[x=-3..3,y=-4..4]) affichera un graphe 3-d (qui ne fait pas partie d’une figure).
Alors que le menu Geo->Nouvelle figure permet d’ajouter un écran de géométrie 2-d ou 3-d permettant de faire à la fois une figure géométrique et des tracés de fonctions.

Chaque graphique dispose à sa droite de boutons permettant de changer la visualisation du graphique : déplacement selon les axes, zoom in et out, arrêt ou reprise d’une animation, configuration, ou d’exporter/imprimer le graphique. Les deux sous-sections qui suivent décrivent les réglages spécifiques au graphes dans le plan et dans l’espace, les deux sections qui suivent expliquent comment créer des figures dans le plan ou dans l’espace. Les sections décrivant les attributs des objets des figures 2-d et 3-d (13.6 et 14.3.2) peuvent être appliquées à la plupart des commandes de tracés même si elles ne font pas partie d’une figure, par exemple on peut saisir dans un niveau de calcul formel :

plotfunc(cos(x)+cos(y)+cos(x+y),[x=-2*pi..2*pi, y=-2*pi..2*pi], xstep=0.2,ystep=0.2, affichage=vert+rempli);
plan(z=1,affichage=cyan+rempli)

12.1  Animations

Les instructions animate, animate3d ou animation permettent de créer des animations en faisant défiler à l’écran une suite de graphe. Le bouton à gauche du M permet d’arrêter ou reprendre une animation (raccourci clavier: p pour pause). Pour afficher une image en avant on utilise le raccourci clavier n ou on clique dans le graphe en 3-d. Pour revenir d’une image en arrière, on utilise la touche b. On peut configurer le temps entre 2 images en cliquant sur le bouton cfg (et remplir la case animate).
Le bouton M permet aussi de créer une animation automatiquement pour des graphes qui dependent d’un paramètre : dans ce cas il faut choisir :
M-Enlever le graphe puis M-Creer animation pour que le graphe initial ne se superpose pas avec l’animation. Pour créer l’animation (on vous demande combien vous voulez d’images (frame) différentes), le temps entre 2 images est toujours définie dans cfg->animate.
Il ne faut pas confondre ces animations programmées avec les animations de rotation des graphes 3-d (cf. la section 12.3.4).

12.2  Graphes dans le plan

On peut effectuer un zoom sur une zone rectangulaire d’un graphe n’appartenant pas à une figure en sélectionnant le rectangle avec le bouton droit de la souris.

Lorsqu’un niveau graphique a le focus, la molette de la souris permet de faire un zoom avant ou arrière.

12.3  Graphes dans l’espace

Pour les graphes dans l’espace, on peut choisir entre une représentation en perspective ou en projection orthogonale (dont on peut modifier le point de vue) et entre une visualisation en couleurs intrinsèques ou par éclairage par 1 à 8 spots lumineux dont on peut controler la position et les propriétés.
On peut choisir d’avoir les axes avec le tri‘edre et le plan de la souris en cochant Montrer les axes ou d’avoir justr le trièdre en décochant Montrer les axes et en cochant Triedre ou de ne rien avoie en décochant Montrer les axes et Triedre.

12.3.1  Comment modifier le point de vue

Pour les graphes dans l’espace, on peut changer le point de vue en appuyant sur la souris en-dehors du parallélépipède de visualisation et en déplaçant la souris, ou avec les touches x,X, y,Y, z,Z pour faire tourner le point de vue autour de l’axe des x, y ou z.

12.3.2  Le plan de vision et l’axe de vision

L’axe de vision est une droite passant par l’observateur et de vecteur directeur la direction de la visée de l’objet : tous les points situés sur une parallèle à l’axe de vision seront représentés par un seul point.

Le plan de vision est un plan perpendiculaire à l’axe de vision et dont l’équation est inscrite en haut de l’écran. On peut le faire bouger le long de l’axe de vision grâce à la molette de la souris : les plans successifs sont obtenus par une translation de vecteur parallèle à l’axe de vision.

Attention
Si le repère est orthonormé et si le plan de vision a pour équation :

ax+by+cz=d 

l’axe de vision est dirigée selon le vecteur [a,b,c] mais si le repère n’est pas orthonormé ce n’est plus vrai!!!!

12.3.3  Comment modifier le plan de vision

L’orientation du plan de vision peut être modifiée en changeant l’axe de vision comme expliqué ci-dessus. On peut aussi en tournant la molette de la souris faire bouger le plan de vision par translation le long de l’axe de vision : cela permet d’obtenir successivement des plans parallèles entre eux et perpendiculaires à l’axe de vision.

On peut aussi indiquer dans cfg l’équation du plan de vision.

Attention
Dans une figure 3-d, lorsqu’on déplace un point en mode Pointeur à l’aide de la molette de la souris, ce point reste dans le plan de vision, donc cela permet aussi de translater le plan de vision.

12.3.4  Rotation animée du point de vue

Xcas permet d’effectuer une animation par rotation du point de vue autour d’un axe passant par l’origine du repère. L’angle de rotation varie d’un tour en un nombre de pas configurable, de même que l’intervalle de temps entre 2 images successives. Tous ces paramètres sont configurables dans l’écran que l’on fait apparaitre en cliquant sur cfg en bas à droite du graphe 3-d, à la ligne commençant par Anim, plus précisément :

Le lancement de l’animation de rotation se fait par le M du graphe, sous-menu 3-d ou par le raccourci clavier r.

Attention
Il ne faut pas confondre ce type d’animation avec les animations obtenus par les instructions animate, animate3d ou animation.

12.3.5  Les lumières des graphes 3-d

Dans la configuration d’un graphe 3-d (bouton cfg en bas à droite de la figure), on peut cocher l’option Lights. Dans ce cas, au lieu de visualiser des objets émettant une couleur intrinsèque, on va éclairer les objets avec un ou plusieurs spots lumineux. Ces spots sont numérotés de 1 à 8 et peuvent être configurés avec les boutons l1 à l8. Nous allons décrire brièvement dans cette section ce type de visualisation, le lecteur souhaitant appronfondir pourra se référer à la documentation d’OpenGL.

Il y a 2 types de spot: positionnel si w=1 et directionnel si w=0 (pour une lumière à l’infini, par exemple du Soleil). Chaque objet a des propriétés vis-à-vis de trois type de lumière: ambiante (sans direction privilégiée), diffuse (émise dans la direction spot-objet, diffusée dans toutes les directions, éventuellement atténuée selon la distance spot-objet et l’angle entre la direction du spot et la direction spot-objet), spéculaire (réémise préférentiellement dans la direction objet-spot). De plus un objet peut lui-même émettre de la lumière (propriétés d’émission).

  1. Caractéristique géométriques :
    les paramètres x,y,z permettent de définir la position du spot si w vaut 1 ou sa direction si w vaut 0. Les paramètre x→, y→, z→ définissent la direction du spot si w vaut 1.
  2. Caractéristiques de la lumière :
    chaque spot fournit On définit pour chaque type de lumière ses 4 composantes (r: red=rouge, g: green=vert, b: blue=bleu, a: alpha=transparence) par un réel compris entre 0 et 1 (maximum). Par exemple, pour voir une scène en lumière bleue, on mettrait 0 sur les canaux r et g et 1 sur le canal b. On utilise en général les mêmes valeurs pour la lumière diffuse et spéculaire, 1,1,1,1 pour les propriétés spéculaires d’un objet de type miroir, et des valeurs correspondant à la couleur pour les propriétés d’émission et de diffusion d’un objet.
  3. Caractéristique d’émission du spot :

Finalement, sur chaque canal de couleur, la luminosité est obtenue par la formule :

 l=
oeoa 
8
j=1
 la,j + os 
8
j=1
 ls,j cos(γj)S + 
  
+  od 
8
j=1
 ld,j  cos(αj)ej cos(βj
1
a0,j+a1,j dj+a2,j dj2
 

où :

Si on ne coche pas l’option Blend (pas de transparence), les objets situés devant d’autres objets les masquent complètement. Si on coche l’option Blend, la valeur du canal a (alpha=transparence) est utilisée pour composer la luminance des objets précédents avec celle de l’objet représenté ensuite. Enfin, l’option Gouraud permet de lisser la représentation des surfaces par des facettes (ce sont des facettes quadrangulaires sauf pour les surfaces implicites qui sont triangulées).

Retour à la page personnelle de Bernard Parisse.
Previous Up Next