Exemple 4: le langage de TeXgraph

L'activité essentielle de TeXgraph est d'interpréter une expression mathématique et de l'évaluer. Tous les calculs sont faits en complexes, plus précisément TeXgraph manipule des listes de complexes.

La création des éléments graphiques se fait principalement par le menu ou les raccourcis clavier, mais il est possible de créer ses propres éléments graphiques avec le langage de TeXgraph (Elément graphique/Créer/Utilisateur).

Les expressions manipulées sont des expressions mathématiques qui peuvent contenir: des valeurs numériques (complexes), des opérations, des noms de variables ou de constantes, des fonctions (ce terme désigne les fonctions mathématiques, les fonctions graphiques, les commandes et les macros). La fonction clé du langage est la fonction Liste qui évalue chacun de ses arguments et renvoie la liste des résultats différents de Nil. Une liste peut aussi s'écrire entre deux crochets: [ et ]. Une liste sert aussi à faire une séquence d'instructions, car si une évaluation donne toujours un résultat numérique (ou égal à Nil), elle peut être accompagnée d'une action (c'est le cas des fonctions graphiques, des commandes, et éventuellement des macros).

Dans les deux exemples suivants, on a créé un Elément graphique Utilisateur (Ctrl+U), on lui a donné un nom (peu importe lequel) et on a saisi la commande qui est à gauche du graphique.

[Width:= thicklines,
Courbe(t+i*t^2),
Width:= thinlines,
for t0 from -5 to 5 step 0.1 do
Droite(t0+i*t0^2,-t0+i*(1+t0^2))
od
]
Développée de la parabole
  • La 1ière instruction et la 3ième règlent l'épaisseur du trait
  • La 2ième trace la parabole y=x^2
  • La 4ième est une boucle qui trace une droite et incrémente t0 de 0.1 jusqu'à ce que t0>5. C'est la droite passant par A=t0+i*t0^2 et A+i*(1+2*t0*i), c'est la normale à la parabole en A.
[A:=-5-5*i, B:=-5+5*i, C:=5-5*i,
n:=5, L:=[A, B, C],
for k from 1 to n do
L:=
[for z in L do (z-A)/2+A od,
for z in L do (z-B)/2+B od,
for z in L do (z-C)/2+C od]
od,
for k from 1 to 3^(n+1) step 3 do
Ligne( L[k,3], 1) od
]
Triangle de Sierpinski
  • On définit 3 points A,B,C, une variable n à 5 et une variable L qui est une liste
  • On mappe l'homothétie de centre A de rapport 1/2 sur L, puis l'homothétie de centre B, puis l'homothétie de centre C, et la liste des résultats est affectée à L, cette opération est exécutée n fois (boucle for)
  • On parcourt la liste L en lisant des points par paquets de trois et en traçant le triangle correspondant.
Exemple 3 Exemple 5