Modulefpreviousupnextcontentsindex[BIG][Normal][small]
Suiv.: 3.2 Instructions graphiques 2D Sup.: Création d'une image 2D Préc.: Création d'une image 2D Index Table des matières


Notions de masques et de fenêtres

Nous avons cité plus haut l'indépendance du logiciel FORTRAN 3D vis-à-vis du type de terminal utilisé. Nous avons également parlé d'écran virtuel où l'on construisait l'objet avant de produire l'image. Il s'agit ici dans un premier temps d'indiquer les coordonnées de cet écran dans un système d'unités au choix de l'utilisateur (Angström, centimètre, kilomètre, année-lumière !...) en rapport avec les dimensions de l'objet réel. C'est le MASQUE.

Si on désire que l'objet tout entier soit visualisé, il faudra que tous ses points soient à l'intérieur du masque . Si le MASQUE est trop grand, l'objet paraîtra petit, et si les dimensions de l'objet dépassent celles du MASQUE, on ne le verra pas en entier. Travaillant ainsi dans le système de coordonnées et d'unités de l'objet, on supprime avantageusement la notion de coordonnées écran.

      SUBROUTINE MASQU2(XMIN, XMAX, YMIN, YMAX)
      REAL XMIN, XMAX, YMIN, YMAX

Définit un  masque rectangulaire dont le point bas gauche est le point (XMIN, YMIN) et le coin haut droit est le point (XMAX, YMAX). Par défaut ce masque est égal au cadre défini sur la surface de visualisation. On ne retient de l'objet que les parties intérieures à ce masque.

zoom1.pszoom2.psfig:471fig:471bDessin initialZoom par changement de masque

Il faut, dans un second temps, définir un cadre sur la surface de visualisation qui va contenir l'image contenue dans le masque. Dans le cas d'un objet plan, ce cadre est défini à l'aide des sous-programmes suivants :

      SUBROUTINE FENTR2(XMIN, XMAX, YMIN, YMAX)
      REAL XMIN, XMAX, YMIN, YMAX

Définit un  cadre sur  la surface de visualisation dont le coin bas gauche est le point (XMIN, YMIN) et le coin haut droit est le point (XMAX, YMAX). Ces coordonnées sont exprimées en centimètres.

      SUBROUTINE RFENTR(PXMIN, PXMAX, PYMIN, PYMAX)
      REAL PXMIN, PXMAX, PYMIN, PYMAX

Définit un  cadre sur la surface de visualisation dont le coin bas gauche est le point (PXMIN, PYMIN) et le coin haut droit est le point (PXMAX, PYMAX). Ces coordonnées sont exprimées en pourcentage de l'écran réel.

Pour certaines applications particulières, il peut être souhaitable de ne pas tenir compte du découpage défini par MASQU2. Il est possible de gérer cet indicateur par:

      SUBROUTINE CLIP(FLAG)
      LOGICAL FLAG

Permet de  supprimer le découpage  défini par MASQU2 si FLAG vaut .FALSE.

      SUBROUTINE CLIPHD(FLAG)
      LOGICAL FLAG

Découpage hardware, c'est-à-dire découpage (clipping ) sur la  fenêtre (au lieu du masque).


Modulefpreviousupnextcontentsindex[BIG][Normal][small]
Suiv.: 3.2 Instructions graphiques 2D Sup.: Création d'une image 2D Préc.: Création d'une image 2D Index Table des matières