Positionnement des objets avec l'environnement picture

Vous pouvez consulter les sources postscript de cet environnement.

Création d'un nouvel objet

On commence par faire un beau dessin que l'on veut réutiliser. Pour l'exemple, on le trace avec des coordonneés absolues dans le repère jps (même l'absolu est relatif...). Ici le dessin sera constitué d'une ellipse, de deux flèches (une bleue et une orange), et un point.

le source jps

../bbgraf/icons/tutoriel/picture_00.jpg

Une fois l'objet dessiné, on relève les coordonnées, dans le repère jps, de sa Bounding Box associée. Dans notre exemple, on obtient les points (-1; -1) et (2; 2.5)

Enregistrement d'un nouvel objet

On associe alors la procedure de dessin de l'objet à un littéral (mon_dessin) dans notre exemple non sans avoir encapsulé le tout dans un gsave...grestore, et après avoir rajouté l'incantation currentpoint translate qui permet de tracer le dessin au point courant (l'environnement picture assure l'existence du point courant au moment de l'appel).

Ne reste plus qu'à créer une procédure dont le nom est celle du dessin du nouvel objet, suffixé par _dim (ce qui donnera mon_dessin_dim dans notre exemple), procedure qui est censee donner la BB du nouvel objet lorsqu'on l'appelle. Nota : cette BB doit être donnée dans le repère postscript. Si on ne la connaît qu'en coordonnées jps, il faut utiliser la fonction jtoppoint qui se chargera du changement de repere.

le source jps

../bbgraf/icons/tutoriel/picture_01.jpg

Positionnement du nouvel objet

Il y a 16 points de référence par objet, donnés par l'intersection de 4 lignes horizontales (up, center, baseline, down) et 4 lignes verticales (left, baseline, center, right). D'où 16 préfixes pour la commande pict : ul, ub, uc, ur, cl, cb, cc, cr, bl, bb, bc, br, dl, db, dc, dr. Les commandes comportant une des lettres l, r, b ou u sont des directions : elles indiquent dans quelle direction placer l'objet par rapport au point indiqué. Par exemple, A (mon_dessin) urpict veut dire "placer l'objet 'mon_dessin' en haut à droite du point A". Pour toutes ces directions, un décalage est rajouté (sauf mention contraire).

Pour chacune des commandes, on rajouter tout ou partie des 3 options suivantes (dans ce ordre) : décalage (en points postscript et entre parenthèses), facteur d'agrandissement/réduction (entre crochets) et angle de rotation (antre accolades).

Voir la page 18 du guide de l'utilisateur ou les pages sur la gestion du texte et des labels TeX pour plus de renseignements.

suite...