A.1 Déplacement de la tortue, gestion du crayon et des couleurs

A.1.1 Déplacement

Ce premier lot de primitives permet de déplacer la tortue.



avance, av n



Fait avancer de n pas la tortue suivant l’orientation courante.



recule, re n



Fait reculer de n pas la tortue suivant l’orientation courante.



tournedroite, td n



Fait tourner la tortue de n degrés vers la droite par rapport à son orientation actuelle.



tournegauche, tg n



Fait tourner la tortue de n degrés vers la gauche par rapport à son orientation actuelle.



cercle R



Trace un cercle de rayon R autour de la tortue.



arc R cap1 cap2



Trace un arc de cercle de rayon R autour de la tortue. Cette arc est compris entre les caps cap1 et cap2.



origine



Replace la tortue à sa position initiale, c’est à dire au point de coordonnées [0 0] et avec pour cap 0



fixeposition, fpos liste



Déplace la tortue au point de coordonnées spécifié à l’aide de la liste des deux nombres.(abscisse puis ordonnée)



fixex x



Déplace la tortue horizontalement jusqu’au point d’abscisse x



fixey y



Déplace la tortue verticalement jusqu’au point d’ordonnée y



fixexy x y



Analogue à fpos[x y]



fixecap n



Oriente la tortue au cap spécifié. 0 correspond à la position verticale vers le haut. On tourne ensuite dans le sens des aiguilles d’une montre.



etiquette mot-liste



Dessine le mot ou la liste spécifiée à l’endroit où se trouve la tortue et suivant son inclinaison.

Exemple : etiquette [Salut à toi] va écrire la phrase « Salut à toi »à l’endroit où est placé la tortue en respectant le cap de celle-ci.



point liste



Le point défini par les coordonnées de la liste s’allume (avec la couleur du crayon).

A.1.2 Propriétés de la tortue

Les primitives présentées ici permettent d’agir sur les propriétés de la tortue. Par exemple, faut-il que la tortue soit visible à l’écran? De quelle couleur doit-elle écrire lorsqu’elle se déplace?



montretortue, mt



Rend la tortue visible à l’écran.



cachetortue, ct



Rend la tortue invisible à l’écran.



videecran, ve



Efface la zone de dessin et réinitialise la tortue à sa position initiale.



nettoie



Efface la zone de dessin mais laisse la tortue au même endroit.



init



Efface la zone de dessin et initialise à leurs valeurs par défaut un certain nombre de paramètre :



baissecrayon, bc



La tortue écrit lorsqu’elle se déplace.



levecrayon,lc



La tortue n’écrit plus lors d’un déplacement.



gomme, go



La tortue efface tous les traits qu’elle rencontre.



inversecrayon, ic



Abaisse le crayon et met la tortue en mode d’inversion.



dessine, de



Abaisse le crayon et le met en mode dessin classique.



fixecouleurcrayon, fcc entier-liste[r g b]



Fixe la couleur du crayon. Voir p.164.



fixecouleurfond, fcfg entier-liste[r g b]



Fixe la couleur du fond d’écran. Voir p.164.



pos



Retourne la position courante de la tortue. Ex : pos retourne [10 -100]



x



Retourne l’abscisse de la position courante de la tortue.



y



Retourne l’ordonnée de la position courante de la tortue.



z



Retourne la cote de la position courante de la tortue (valable uniquement dans l’espace).



cap



Retourne le cap de la tortue (cf fixecap)



vers liste



La liste doit contenir deux nombres représentant des coordonnées. Rend le cap qu’il faut donner à la tortue pour aller vers le point défini par les coordonnées de la liste.



distance liste



La liste doit contenir deux nombres représentant des coordonnées. Rend le nombre de pas entre la position actuelle et le point défini par les coordonnées de la liste.



couleurcrayon, cc



Retourne la couleur actuelle du crayon. Cette couleur est déterminée à l’aide d’une liste [r g b] ou r est la composante rouge, b la bleue et g la verte.



couleurfond, cf



Retourne la couleur actuelle du fond. Cette couleur est déterminée à l’aide d’une liste [r g b] ou r est la composante rouge, b la bleue et g la verte.



enroule, enr



Configure le mode de fenêtrage. Si la tortue sort de la zone de dessin, elle réapparaît de l’autre côté!



fenetre, fen



Configure le mode de fenêtrage. La tortue est libre de sortir de la zone de dessin. Bien sûr, elle n’écrira pas en dehors de cette dernière.



clos



Configure le mode de fenêtrage. La tortue est confinée à la zone de dessin. Si elle s’apprête à sortir, un message d’erreur vous l’indiquera et vous donnera le nombre de pas maximum de la tortue avant sortie ( à 1 ou 2 pas près ...).



perspective



Configure le mode de fenêtrage. La tortue peut à présent s’orienter dans l’espace. (Allez voir la section A.2 dédiée à ce mode). Pour sortir de ce mode, utiliser la primitive fenetre, enroule ou clos



trouvecouleur liste



Retourne la couleur du pixel de coordonnées a. Cette couleur est déterminée à l’aide d’une liste [r g b] ou r est la composante rouge, b la bleue et g la verte.



fixetaillecrayon, ftc nombre



Définit l’épaisseur de la pointe du crayon en pixel. Réglé sur 1 par défaut.



taillecrayon, tc



Renvoie l’épaisseur de la pointe du crayon en pixel.



ffc, fixeformecrayon 0-1



Fixe la forme de la mine du crayon.



fc, formecrayon



Renvoie la forme de la mine du crayon. 0→Carré. 1→Rond.



fqd, fixequalitedessin 0-1-2



Fixe la qualité du dessin.



qd, qualitedessin



Renvoie la qualité du dessin.



ftd, fixetailledessin liste



Fixe la taille de la zone de dessin.



tailledessin



Renvoie la taille de la zone de dessin.



fixeforme, fforme entier



Vous pouvez choisir de l’aspect de la tortue utilisée soit en allant dans Option-Préférences-Choix de la tortue soit à l’aide de cette primitive. Le nombre n doit être un entier compris entre 0 et 6. (0 désigne la forme triangulaire)



forme



Renvoie le numéro qui représente l’image actuelle de la tortue.



fixetaillepolice, ftp entier



Lorsqu’on écrit du texte sur l’écran à l’aide de la primitive etiquette, il est possible de modifier la taille de la police utilisée à l’aide de cette primitive. Par défaut, la taille de la police est réglée à 12.



taillepolice, tp



Renvoie la taille de la police actuellement utilisée lorsqu’on écrit avec la primitive etiquette.



fixealignementpolice, fap liste



Lorsqu’on écrit du texte sur l’écran à l’aide de la primitive etiquette, il est possible de spécifier la façon dont le texte est centré par rapport à la tortue. La liste est composée de deux nombres.

Voici les différents cas possibles : fixetaillepolice 50 etiquette "XLogo

pict pict pict
fap [2 0] fap [1 0] fap [0 0]
pict pict pict
fap [2 1] fap [1 1] fap [0 1]
pict pict pict
fap [2 2] fap [1 2] fap [0 2]





alignementpolice ap



Retourne la liste représentant le mode d’alignement du texte lorsqu’on écrit avec la primitive etiquette



fixenompolice, fnp entier



Fixe la police utilisée pour écrire à l’écran à l’aide de la primitive etiquette. Le numéro identifiant la police à utiliser est repérable dans Menu→Options→Préférences→Onglet Police.



nompolice, np



Renvoie une liste composée de deux éléments. Le premier est le numéro correspondant à la police utilisée pour écrire à l’aide de la primitive etiquette. Le second est une liste contenant le nom de cette même police.



fixeseparation, fsep nombre



Détermine le ratio entre la fenêtre graphique et la zone d’historique. Le nombre « a » doit être compris entre 0 et 1. Lorsqu’il vaut 1 la zone de dessin occupe toute la place, lorsqu’il vaut 0, la zone d’historique occupe toute la fenêtre etc



separation,sep



Renvoie le ratio actuel entre la zone de dessin et la zone d’historique.



grille a b



a et b sont des entiers. Trace une grille dont chaque carreau vaut a sur b.



stopgrille



Efface la grille.



fcg, fixecouleurgrille couleur



Permet de choisir la couleur de la grille. Ex : fcg rouge



couleurgrille



Retourne la couleur actuelle de la grille.



grille ?



Teste si la grille est tracée. Rend vrai ou faux selon les cas.



axes n



Trace les deux axes. Les graduations sont espacées de n pas de tortues.



axex n



Trace l’axe horizontal. Les graduations sont espacées de n pas de tortues.



axey n



Trace l’axe vertical. Les graduations sont espacées de 30 pas de tortues.



stopaxes



Efface les axes.



fca fixecouleuraxes couleur



Permet de choisir la couleur des axes. Ex : fca [120 5 100]



couleuraxes



Retourne la couleur actuelle des axes.



axex ?



Teste si l’axe horizontal est tracé. Rend vrai ou faux selon les cas.



axey ?



Teste si l’axe vertical est tracé. Rend vrai ou faux selon les cas.



fixezoom n



Effectue un zoom sur la zone de dessin. En fait le facteur a représente l’échelle par rapport à la taille de l’image fixée dans le panneau de préférence.



zoom



Retourne le facteur de zoom de la zone de dessin.



taillefenetre, tf



Renvoie une liste formée des coordonnées du coin supérieur gauche de la zone de dessin et du coin inférieur droit.



message, msg liste



Affiche un message d’information dans une boîte de dialogue, l’exécution du programme est stoppé en attente d’un click sur OK.



longueuretiquette, le mot-liste



Renvoie la longueur nécessaire pour écrire le mot ou la liste désirée sur la zone de dessin en utilisant la police sélectionnée. Cette longueur est exprimée en pas de tortue.

A.1.3 Un petit mot sur les couleurs

Les couleurs sont définies dans XLogo à l’aide de trois nombres compris entre 0 et 255. Ce système de codage s’appelle le codage « RGB »(Red, Green, Blue). Chaque nombre correspond respectivement à l’intensité du rouge, du vert et du bleu dans la couleur considérée. Etant donné que ce codage n’est pas très intuitif, XLogo vous propose également 16 couleurs prédéfinies accessibles soit par un numéro soit par une primitive.
Numéro Primitives [R G B] Couleur
0 noir [0 0 0]
pict
1 rouge [255 0 0]
pict
2 vert [0 255 0]
pict
3 jaune [255 255 0]
pict
4 bleu [0 0 255]
pict
5 magenta [255 0 255]
pict
6 cyan [0 255 255]
pict
7 blanc [255 255 255]
pict
8 gris [128 128 128]
pict
9 grisclair [192 192 192]
pict
10 rougefonce [128 0 0]
pict
11 vertfonce [0 128 0]
pict
12 bleufonce [0 0 128]
pict
13 orange [255 128 0]
pict
14 rose [255 175 175]
pict
15 violet [128 0 255]
pict
16 marron [153 102 0]
pict
 
 # Ces trois commandes ont le même effet.
 fcc orange
 fcc 13
 fcc [255 200 0]

A.1.4 Le mode animation

Il existe trois primitives : animation, stopanimation et rafraichis qui permettent d’exécuter des commandes sans que la tortue ne les affiche.

animation



On passe en mode animation. La tortue ne dessine plus à l’écran mais effectue le tracé en mémoire. Pour actualiser le dessin à l’écran, utiliser la primitive rafraichis. Très utile pour créer une animation ou effectuer un tracé plus rapidement.



stopanimation



Ceci termine le mode animation : On repasse en mode classique. On voit les déplacements de la tortue à l’écran.



rafraichis



En mode animation, rafraichit l’écran : l’image sur la zone de dessin est actualisée.

Pour indiquer le mode animation, une icone représentant une caméra apparait dans la zone d’historique. Si vous cliquez sur la caméra, cela stoppera l’animation, c’est à dire que ceci est équivalent à utiliser la primitive stopanimation.
pict

A.1.5 Affichage du texte dans la zone d’historique

Ce tableau regroupe les primitives associées à la zone de texte d’historique. Toutes les primitives concernant la taille et la couleur de la police utilisée ne sont valables que pour le rendu de la primitive ecris.



vt, videtexte



Efface la zone contenant l’historique des commandes et des commentaires.



ec, ecris arg1



Affiche l’argument arg1 dans la zone d’historique.

 ecris "abcd --------> abcd
 ec [1 2 3 4] ----> 1 2 3 4
 ec 4 ------------> 4



tape arg1



Identique à la primitive ecris mais ne retourne pas à la ligne.



fixetaillepolicetexte, ftpt n



Définis la taille de la police dans la zone d’historique. Valable uniquement pour la primitive ecris



taillepolicetexte, tpt



Renvoie la taille de la police associée à la primitive ecris.



fixecouleurtexte, fct couleur



Définis la couleur de la police dans la zone d’historique. Valable uniquement pour la primitive ecris. Voir p.164.



couleurtexte, ctexte



Renvoie la couleur de la police associée à la primitive ecris dans la zone d’historique.



fixenompolicetexte, fnpt n



Fixe la police utilisée pour écrire dans l’historique à l’aide de la primitive ecris. Le numéro de la police est repérable dans Menu→Options→Préférences→Onglet Police.



nompolicetexte, npt



Renvoie une liste composée de deux éléments. Le premier élément est le numéro représentant la police utilisée pour écrire à l’écran à l’aide de la primitive ecris. Le second est une liste contenant le nom de cette même police.



fixestyle, fsty arg1



Fixe le style du rendu de la police utilisée par la primitive ecris. Les différents styles possibles sont aucun, gras, italique, barre, indice, exposant, souligne. Si vous souhaitez en utiliser plusieurs à la fois, les indiquer dans une liste.

Quelques exemples pour le formatage du texte avec la primitive ecris :



fixestyle [gras souligne] ecris "bonjour

bonjour ________

fsty "barre tape [texte rayé] fsty "italique tape "\ x fsty "exposant ecris 2

texte rayé x2

sty, style



Renvoie une liste composée des différents styles actuellement utilisés pour le rendu de la primitive ecris.