Menu principal bas de page




Ce moteur permet de réaliser et de faire tourner dans l'espace n'importe quel objet constitué uniquement de segments (cf. sujets n°2 et 3 pour le tracé de courbes).

L'utilisation ne requiert que les coordonnées des extrémités des segments dans le repère de l'objet qui, comme nous l'avons vu, peut être défini de la manière la plus pratique qu'il soit, à la convenance de chacun. Il faut aussi définir les valeurs initiales des paramètres principaux :
- R (distance œil/centre_repère_de_l'objet)
- D (distance œil/écran)
- Thêta
- Phy
- AV (distance œil/plan frontal avant)
- AR (distance œil/plan frontal arrière)

Voici le programme commenté en Turbo Pascal qu'il faudrait taper :

Program Nom_de_programme;
Uses calcul ;        {inclusion de l'unité gérant notre moteur 3D}

Begin
      {paramètres principaux de départ}
 d:=Valeur_de_D_choisie;
 r:=Valeur_de_R_choisie;
 theta:=Valeur_de_Theta_choisie;
 phy:=Valeur_de_phy_choisie;
 AV:=Distance_œil/plan_frontal_avant;
 AR:=Distance_œil/plan_frontal_arrière;

 Mode:=Mode_choisi;      {1 : vision type fil de fer, pas de faces cachées}
     {2 : élimination des faces cachées, polygone convexe}
     {3 : élimination des faces cachées, polygone concave}

 Liste de fonctions définissants l'objet (voir ci-après)

 Move;     {lance le moteur 3D}
End.


Voici, détaillée, la liste des fonctions qui servent à définir l'objet :
- Segment(x1,y1,z1,x2,y2,z2,couleur) : définit le segment d'extrémité A(x1,y1,z1) et B(x2,y2,z2) de couleur spécifiée.
- Quadrilatere(x1,y1,z1,x2,y2,z2,x3,y3,z3,x4,y4,z4, couleur) : définit un quadrilatère.
- Parrallelepipede(x1,y1,z1,x2,y2,z2,x3,y3,z3, couleur) : définit un quadrilatère par 3 de ses 8 points, A B et C.


- Surface(x1,y1,z1,x2,y2,z2,x3,y3,z3,x4,y4,z4; style, couleur) : définit une face de 4 côtés de forme quelconque par ses 4 sommets à rentrer dans le sens des aiguilles d'une montre. (en cas d'erreur, seules les faces cachées seront visibles ….).
- triangle(x1,y1,z1,x2,y2,z2,x3,y3,z3; style, couleur) : définit une face triangulaire à partir de ses 3 sommets, à rentrer dans le sens des aiguilles d'une montre. (même remarque)


Remarque concernant le mode n°2 (élimination des faces cachées pour un polygone convexe):

Lier des segments à une face (dessin d'une fenêtre dans un mur de maison) est très simple : il suffit de déclarer la face, puis, à la suite, de déclarer les segments à inclure.
1- Surface(20,-5,0,20,-5,7,20,5,7,20,5,0,1,0);
2- quadrilatere(20,4,0,20,4,7,20,-4,7,20,-4,0,1);
3- segment(20,-4,5,20,4,5,1);
4- surface(-20,27,0,0,17,20,0,-17,20,-20,-27,0,1,5);
5- segment(20,-7,-5,20,8,-5,1);

Le quadrilatère déclaré en ligne et le segment qui le suit sont tous deux liés à la dernière surface déclarée avant eux, c'est à dire la surface de la ligne 1.
De même, le segment de la ligne 5 est lié à la surface de la ligne 4.




Page
précédente
Page
suivante