Outils du site


script:crayon

Ceci est une ancienne révision du document !


Le crayon

Cette page présente toutes les possibilités de script Instrumenpoche de la forme :

<action objet="crayon" ... />

c'est-à-dire les actions mettant en jeu le crayon.

Déplacement, apparition

Comme tous les instruments, le crayon peut être masqué avec :

<action objet="crayon" mouvement="masquer" />

Il est montré avec :

<action objet="crayon" mouvement="montrer" />

Il est possible de faire apparaître le crayon à un autre endroit de la scène que celui qui est prévu par défaut en précisant les coordonnées de cet endroit, par exemple :

<action objet="crayon" mouvement="montrer" abscisse="200" ordonnee="350" />

Les coordonnées du crayon sont celles de l'extrémité de sa mine.

Le crayon peut être déplacé jusqu'à un point en utilisant :

<action objet="crayon" mouvement="translation" abscisse="200" ordonnee="350" />

Un attribut vitesse peut être précisé, il donne le nombre de pixels de déplacement du crayon par dixième de seconde. La valeur par défaut est 8.

<action objet="crayon" mouvement="translation" abscisse="200" ordonnee="350" vitesse="10" />

Il peut également pivoter autour de sa mine :

<action objet="crayon" mouvement="rotation" angle="90" sens="-5" />

L'attribut sens est similaire à l'attribut vitesse pour une translation. Cependant, sens peut être négatif. Une valeur positive permet de faire pivoter le crayon dans le sens des aiguilles d'une montre, une valeur négative dans l'autre sens. La valeur absolue de sens indique le nombre de degrés dont le crayon pivote à chaque dixième de seconde. L'attribut angle donne l'angle que va faire le crayon avec l'horizontale à la fin de sa rotation.

Tracer

En plus des attributs objet et mouvement, tout tracé doit contenir un attribut id dont la valeur est unique. C'est cette valeur qui permet à Instrumenpoche d'identifier le tracé. Si, par exemple, on trace un trait avec un id égal 7 puis, plus tard, un autre trait avec le même id, le deuxième trait effacera le premier. En cas d'absence d'identifiant, Instrumenpoche affichera des messages d'erreurs lors de la lecture et, ne pouvant identifier les traits correctement, risque d'en effacer certains en en traçant d'autres.

Le crayon trace un segment depuis sa position actuelle jusqu'au coordonnées données, par exemple :

<action objet="crayon" mouvement="tracer" id="1" abscisse="200" ordonnee="350" />

Par exemple, pour tracer un segment au crayon depuis le point de coordonnées (100 ; 150) jusqu'à (200;350), il faut écrire :

<action objet="crayon" mouvement="translation" abscisse="100" ordonnee="150" />
<action objet="crayon" mouvement="tracer" id="1" abscisse="200" ordonnee="350" />

Par défaut, le tracé sera noir et d'une épaisseur de 1 pixel. Il est possible de préciser une autre épaisseur (en pixels) et une couleur, par son format hexadécimal ou son nom. Les deux nœuds suivants sont équivalents :

<action objet="crayon" mouvement="tracer" id="1" abscisse="200" ordonnee="350" epaisseur="3" couleur="darkorchid" />
<action objet="crayon" mouvement="tracer" id="1" abscisse="200" ordonnee="350" epaisseur="3" couleur="9932CC" />

On peut forcer le crayon à dessiner une flèche au bout du segment en précisant style=“vecteur” et à tracer en pointillés avec pointille=“tiret”.

L'attribut forme peut prendre quatre valeurs :

  • “droite” : le segment sera tracé sur toute la largeur de la zone de tracé pour simuler un tracé de droite
  • “demidroite” : le crayon trace depuis sa position d'avant le tracé jusqu'au bord de la feuille, en passant par le point dont les coordonnées sont données par abscisse et ordonnee
  • “libre” : le crayon trace des segments consécutifs dont les coordonnées extrémités sont données par les attributs abscisses et ordonnees, qui sont des listes de nombres séparés par des virgules.
  • “polygone” : le crayon trace un polygone fermé dont l'intérieur est colorié. Les coordonnées des sommets du polygone sont données dans des listes abscisses et ordonnees comme pour la forme libre. Pour un polygone, on peut préciser couleur_fond si on veut que la couleur de fond du polygone soit différente de la couleur de son périmètre. L'attribut facultatif opacite reçoit un nombre compris entre 0 et 100 définissant l'opacité du fond du polygone : 0 pour un fond totalement transparent, 100 pour un fond opaque. La valeur par défaut est 60.

Exemple Le code suivant donne l'image ci-contre

<?xml version="1.0" encoding="UTF-8"?>
<INSTRUMENPOCHE version="2">
<action mouvement="montrer" objet="crayon" />
<action mouvement="tracer" objet="crayon" id="1" forme="polygone" 
       abscisses="100,200,200,100" ordonnees="100,100,200,200" 
       couleur="darkorchid" epaisseur="3" couleur_fond="gold" />
</INSTRUMENPOCHE>

Si l'attribut forme n'est pas précisé, le crayon trace un segment.

NB pour les tracés en mode segment, droite, demi-droite, il est possible de remplacer les coordonnées par un attribut cible qui devra être égal à l'identifiant d'un point précédemment créé.

Par exemple :

<action type="point" ordonnee="300" abscisse="640" id="1" mouvement="creer" objet="point"/>
<action mouvement="tracer" objet="crayon" id="2" cible="1" />

va tracer un segment depuis l'emplacement actuel du crayon jusqu'au point de coordonnées (640 ; 300).

script/crayon.1291626192.txt.gz · Dernière modification : 06/12/2010 10:03 de lzamo