| ★ APPLICATIONS ★ CREATION GRAPHIQUE ★ VISION (CPC REVUE) ★ |
| Vision (CPC Revue) | Applications Creation Graphique |
L'utilisation de l'ordinateur s'est rapidement démocratisée et s'est mise à la portée de la famille. Un type d'application, particulièrement attrayante, concerne la création et la visualisation d'images, de sorte que les logiciels d'applications graphiques auront dans l'avenir une position de plus en plus privilégiée.
Parmi les techniques informatiques de pointe, la C.F.A.O. (Conception-Fabrication Assistée par Ordinateur) utilise l'image comme principal support de communication entre l'homme et la machine. C'est dans cette optiqjje que nous avons développé notre logiciel "VISION" qui constitue une initiation aux principales techniques graphiques utilisées en C.A.O. Il permet, en particulier :
L'objet que l'on veut représenter est en général tridimensionnel, alors que l'écran de l'ordinateur, qui constitue le support de l'image est, lui, bidimensionnel. L'outil mathématique principal sera donc celui qui permet le passage de l'espace 3D à l'espace 2D. Il s'agira d'une projection géométrique plane. REPERES DE DESCRIPTION L'objet est décrit en utilisant un repère cartésien OXYZ (figure 1) et les points caractéristiques de cet objet seront repérés à partir des coordonnées X, Y, Z de ces points. L'œil de l'observateur, lui, est défini dans un repère sphérique (R.0,^) et l'utilisateur pourra modifier à convenance la position de cet œil (figure 2). Le type de projection géométrique adopté sera :
La différence entre ces deux types de projection pourra être observée aisément à l'aide des exemples proposés. PROJECTION GEOMETRIQUE Le principe de la projection géométrique est rappelé brièvement dans ce chapitre (figure 3).
D'autre part, on passe du repère objet (OXYZ) au repère observateur (O'X0 Y0Z0) Par des transformations simples (translations, rotations...) de sorte qu'un point P de l'objet de coordonnées X,Y,Z se transforme dans le repère observateur en utilisant les relations suivantes : [2] X0 = -X sin θ + Y cos θ CENTRAGE INITIAL La position initiale de l'œil est fixée automatiquement de telle sorte que R = D » zO maxi. Dans ces conditions, l'image initiale est obtenue en utilisant une projection parallèle : XE ≈ X0 et YE = Y0 Le centrage de l'image sur l'écran est alors calculé en utilisant la notion de [3]
"fenêtres" d'ont les limites sont W1, W2, W3, W4 en coordonnées utilisateur et la notion de "Viewport" en coordonnées écran dont les limites sont V1, V2, V3, V4. Les formules de passage de (XE,YE) vers les coordonnées réelles sur écran (XEC,YEC) sont d'après [4], MAINTIEN DU CENTRAGE Lorsque l'on modifie la distance de l'œil (R), la position de l'écran (D) ou lorsque l'on effectue un "zoom", il est nécessaire d'effectuer un recentrage de la nouvelle image sur le moniteur (figure 4). Ceci est effectué simplement en appliquant les formules (3) dans lesquelles on aura préalablement modifié la valeur des coefficients bg et bg par : [4] b*8 = kb8 + XC0-kXc1 où k : proportion entre la dimension de la nouvelle image et de l'ancienne. XC0,YC0 : coordonnées moniteur du centre de l'image à obtenir. XC1, YC1 : coordonnées moniteur du centre de la partie que l'on déplace.
Le détail de ces opérations sera abordé au chapitre "utilisation". TRAITEMENT DES FACES CACHEES Les algorithmes permettant l'élimination des faces cachées sont en général complexes et demandent une puissance de calcul importante. La majorité d'entre eux seront donc inadaptables sur un CPC 464 ou tout autre ordinateur du type "familial". Parmi les méthodes les plus simples, on peut citer celle qui consiste à tester la visibilité des faces d'un objet à partir de l'orientation des normales. Cette méthode nécessite cependant, de la part de l'utilisateur, une description rigoureuse des facettes en respectant, en particulier, un sens de parcours. De plus, elle ne s'applique qu'à des objets convexes. Pour éviter ces inconvénients, on a préféré utiliser l'algorithme du "peintre". Cette méthode s'avère être très efficace, moyennant quelques précautions. Elle consiste à peindre les facettes de l'objet dans l'ordre d'éloignement de l'œil. Il faut, toutefois, que les facettes ne soient pas trop grandes et disposer par ailleurs d'une fonction permettant le remplissage couleur de surface ("fill area"). Cette fonction, absente sur le CPC 464, a été créée en utilisant les extensions BASIC proposées par Rémy Valentin dans la revue CPC (réf. 1 ). Le principe de la méthode choisie est alors (figure 5) :
Les règles d'implantation mémoire de cette partie sont les suivantes : PROFA (100) : Profondeur des facettes. ORD% (100) : Ordre de classement des facettes. Les limites actuelles sont donc fixées à 100 nœuds et 100 facettes. De plus, une facette comporte au maximum 4 nœuds. UTILISATION La représentation ou modélisation des objets a été faite en utilisant la notion de "facettes". Il s'agit donc d'un modèle de type surface plus riche que la classique représentation "Fil de Fer". Il permet, entre autre, la description d'objets aux formes complexes. Un exemple complet est présenté en annexe, où l'on montre comment modéliser simplement un avion. DESCRIPTION DES OBJETS L'utilisateur a le choix entre plusieurs possibilités : Définir son propre objet sous forme de facettes dont il précise les nœuds sommets et leurs coordonnées dans l'espace. Ainsi, il devra donner dans l'ordre :
Compléter la bibliothèque d'objets en y déposant ses propres entités. La procédure détaillée a fait l'objet d'une description dans le paragraphe : Extension de la bibliothèque d'objets. On s'y reportera. UTILISATION DES FONCTIONS L'objet étant maintenant défini, l'utilisateur a le choix entre quatre fonctions :
L'objet étant positionné dans l'espace X,Y,Z, l'utilisateur a la possibilité de changer la position de l'œil et donc, d'avoir de l'objet une vision sous un angle différent. Il pourra : — modifier l'angle de colatitude PHI (figure 7) à l'aide des touches du curseur :
Touche " A" : l'œil avance vers l'objet Lorsque l'image apparaît sur le moniteur, le programme revient automatiquement sur la fonction utilisée. La touche "RETURN" permet de remonter à la sélection d'une autre fonction.
A la sélection du 2eme point, le cadre rectangulaire rouge indique la zone des traits du dessin sans pour autant les effacer. Nous vous proposons, à titre d'entraînement, d'essayer le zoom sur l'axe du moulin (objet n° 4 dans la bibliothèque) ou sur la carlingue de l'avion (objet n° 3). On peut, bien entendu, enchaîner plusieurs zooms les uns derrière les autres. L'utilisation de la touche "RETURN" donne le choix de revenir ou non à l'image initiale.
CONCLUSION "VISION" présente, à nos yeux, un caractère pédagogique certain. C'est, en effet, une initialisation aux techniques C.A.O. et les principales fonctions graphiques sont présentes. Ainsi, les "faces cachées", dont beaucoup parlent et que peu montrent, existent dans "VISION". Si le sujet n'est pas très original, il a au moins le mérite d'être d'actualité. La façon dont les techniques graphiques courantes ont été introduites nous semblent intéressantes. Le résultat en est que, même avec une machine aux caractéristiques techniques modestes, on obtient des performances très satisfaisantes (zoom, faces cachées...). "VISION" est un logiciel destiné à évoluer :
REFERENCES
|