Il est possible de programmer ses propres fonctions sous forme de macros. Une macro est caractérisée par un
nom et une expression (ou commande). Les macros se définissent à partir du menu et elles
sont globales.
Une macro peut être avec ou sans paramètres. Les paramètres s'écrivent: %1, %2, etc...,
et il n'est pas nécessaire de les déclarer. Une macro s'utilise comme une fonction: nom(arg1,...,argn),
et lorsqu'il n'y a pas de paramètre, on écrit: nom().
Les macros qui ont un effet graphique (qui font un tracé) ne sont utilisables que lors de la création
d'un Elément graphique/Utilisateur.
Le fichier TeXgraph.mac (chargé au démarrage) contient une série de macros de base
comme: dessiner un angle droit, marquer des angles égaux, des segments de même longueur, tracer la tangente à une courbe,...(consulter l'aide).
| Dans cet exemple, on a créé un élément graphique Utilisateur avec la commande:
[Axes(0, 1+i),
Color:= red, Courbe(t+2*i*sin(t)),
Color:= blue, Courbe(t+i*cos(t)),
Color:= green, FillStyle:= bdiag,
FillColor:= black,
domaine3(2*sin(t), cos(t) )
]
La macro domaine3(f(t), g(t)) trace la ligne polygonale (liste de points) qui délimite la partie du plan comprise entre les courbes
des deux fonctions avec t dans l'intervalle [tMin; tMax].
|
 |
| La macro domaine3 (TeXgraph.mac) |
|
| Dans cet exemple, on a créé un élément graphique Utilisateur avec la commande:
[Fenetre(i,1,10*(1+i)),
Axes(0,0.5*(1+i)),
tMin:= 0, tMax:= 1,
Courbe(t+i*4*t*(1-t)),
Droite(0,1+i),
Color:= red,
suite(4*t*(1-t), 0.33, 20)
]
La macro suite(f(t), u0, n) fait la représentation graphique de la suite définie par u(n+1)=f(u(n)), de
premier terme u0 et jusqu'au rang n.
|
 |
| La macro suite (TeXgraph.mac) |
|
Dans cet exemple, on a créé une macro appelée courbe3D,
et définie par la commande: Courbe( Proj3D( [%1+i*%2, %3] ) )
les trois paramètres représentent 3 fonctions: x(t), y(t) et z(t). Puis on a créé un élément graphique Utilisateur
avec la commande:
[ Arrows:= 1, LineStyle:= dashed,
Axes3D(0,0,0),
Color:= red, LineStyle:= solid,
tMin:=-4*pi, tMax:=4*pi,
NbPoints:= 100, Arrows:=0,
courbe3D(2*cos(t),t/3,2*sin(t))
]
La macro courbe3D permet ainsi de représenter des courbes gauches, ici on a dessiné une hélice d'axe Oy. On peut faire pivoter
la figure à l'aide des boutons flêchés de la barre d'outils.
|
 |
| La macro Axes3D (TeXgraph.mac) |
|