Previous Next Up Title Contents General Index Functions Index Bookshelf

7. ATTRIBUTS GRAPHIQUES DES STRUCTURES


Ce chapitre regroupe l'ensemble des fonctions de PHIGURE permettant de positionner des attributs graphiques dans une structure générée par PHIGURE. Ces attributs sont identiques à ceux traités par la norme PHIGS, comme par exemple la couleur de polyligne, la couleur de texte, la taille d'une marque, etc...Ces fonctions de PHIGURE sont ainsi complémentaires à celles déjà existantes de le norme PHIGS.

Chacune de ces fonctions ouvre une structure donnée, et un insère, à un label donné dans la structure un élément correspondant à l'attribut souhaité. Si il existe déjà dans la structure un élément de même type après le label, alors le nouvel élément ne sera pas inséré mais il remplacera celui déjà existant.

Exemple d'utilisation : positionnement de couleurs

Supposons que PHIGURE crée une structure d'identificateur STRID représentant un ensemble de flèches, un cadre et un texte. On suppose que chaque flèche est composée d'un polyline et d'un fill area représentant sa pointe, et que le cadre est composé d'un polyline. Enfin, on suppose que l'organisation de la structure est la suivante

LABEL -1

liste des primitives polyline des traits de flèche

LABEL -2

liste des primitives fill area des pointes de chaque flèche

LABEL -3

primitive polyline du cadre

LABEL -4

primitive text du texte

Si on veut donner la couleur 2 aux traits de chaque flèche, la couleur 6 au cadre, la couleur 7 aux pointes de chaque flèche et la couleur 3 au texte, on pourra utiliser la séquence suivante après la création de la structure STRID :

CALL TSPLCI (STRID, -1, 2) /* couleur 2 aux traits de flèches */

CALL TSPLCI (STRID, -3, 6) /* couleur 6 au cadre */

CALL TSICI (STRID, -2, 7) /* couleur 7 aux pointes de flèche */

CALL TSTXCI (STRID, -4, 3) /* couleur 3 au texte */

Sachant qu'un attribut de primitive est valable pour toutes les primitives qui suivent dans la structure jusqu'à la rencontre d'une nouvelle valeur de cet attribut, on obtient les mêmes couleurs par les appels suivants :

CALL TSPLCI (STRID, -1, 2) /* couleur 2 aux traits de flèches */

CALL TSPLCI (STRID, -3, 6) /* couleur 6 au cadre */

CALL TSICI (STRID, -1, 7) /* couleur 7 aux pointes de flèche */

CALL TSTXCI (STRID, -1, 3) /* couleur 3 au texte */

De plus sachant que toute structure PHIGURE commence par le LABEL 0 (cf chapitre Création de la Scène) la référence au LABEL -1 dans ces 4 appels peut être remplacée par une référence au LABEL 0 : la séquence d'appels suivant donne toujours les mêmes couleurs:

CALL TSPLCI (STRID, 0, 2) /* couleur 2 aux traits de flèches */

CALL TSPLCI (STRID, -3, 6) /* couleur 6 au cadre */

CALL TSICI (STRID, 0, 7) /* couleur 7 aux pointes de flèche */

CALL TSTXCI (STRID, 0, 3) /* couleur 3 au texte */

Si la couleur du cadre devait aussi être la couleur 2, le deuxième appel de TSPLCI est inutile.


Previous Next Up Title Contents General Index Functions Index Bookshelf