vardef Affichage= path cadre; cadre=(llcorner texto+(-eb,-eb))--(lrcorner texto+(eb,-eb))--(urcorner texto+(eb,eb))--(ulcorner texto+(-eb,eb))--cycle; picture TEXT; TEXT=image( fill cadre withcolor DarkBlue; draw texto; draw (llcorner texto+(-eb,-eb))--(lrcorner texto+(eb,-eb))--(urcorner texto+(eb,eb))--(ulcorner texto+(-eb,eb))--cycle; ); TEXT enddef; vardef Avancer(expr nbpas)= save $; picture $,texto; texto=image( if numeric nbpas: label.lrt(LATEX("\bfseries\color{white}Avancer de \colorbox{white}{\textcolor{black}{"&decimal(nbpas)&"}}"),if unknown _coinprec:(0,0) else: _coinprec fi); else: label.lrt(LATEX("\bfseries\color{white}Avancer de "&nbpas&""),if unknown _coinprec:(0,0) else: _coinprec fi); fi; ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Tournerd(expr nbang)= save $; picture $,texto; texto=image( if numeric nbang: label.lrt(LATEX("\bfseries\color{white}Tourner à droite de \colorbox{white}{\textcolor{black}{"&decimal(nbang)&"}} degré(s)"),if unknown _coinprec:(0,0) else: _coinprec fi); else: label.lrt(LATEX("\bfseries\color{white}Tourner à droite de "&nbang&" degré(s)"),if unknown _coinprec:(0,0) else: _coinprec fi); fi; ); $=Affichage shifted (if unknown _coinprec:(0,0) else : _coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Tournerg(expr nbang)= save $; picture $,texto; texto=image( if numeric nbang: label.lrt(LATEX("\bfseries\color{white}Tourner à gauche de \colorbox{white}{\textcolor{black}{"&decimal(nbang)&"}} degré(s)"),if unknown _coinprec:(0,0) else : _coinprec fi); else: label.lrt(LATEX("\bfseries\color{white}Tourner à gauche de "&nbang&" degré(s)"),if unknown _coinprec:(0,0) else : _coinprec fi); fi; ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Orienter(expr nbang)= save $; picture $,texto; texto=image( label.lrt(LATEX("\bfseries\color{white}S'orienter à "&if numeric nbang:"\colorbox{white}{\textcolor{black}{"&decimal(nbang)&" \tiny$\blacktriangledown$}}" else: nbang fi&""),if unknown _coinprec: (0,0) else:_coinprec fi); ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Orienterdirection(expr nbang)= save $; picture $,texto; texto=image( label.lrt(LATEX("\bfseries\color{white}S'orienter vers \colorbox{LightBlue}{\textcolor{black}{"&nbang&" \tiny$\blacktriangledown$}}"),if unknown _coinprec: (0,0) else:_coinprec fi); ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Aller(expr xa,ya)= save $; picture $,texto; texto=image( if (numeric xa) and (numeric ya): label.lrt(LATEX("\bfseries\color{white} Aller à x : \colorbox{white}{\textcolor{black}{"&decimal(xa)&"}} y : \colorbox{white}{\textcolor{black}{"&decimal(ya)&"}}"),if unknown _coinprec:(0,0) else: _coinprec fi); elseif (numeric xa): label.lrt(LATEX("\bfseries\color{white} Aller à x : \colorbox{white}{\textcolor{black}{"&decimal(xa)&"}} y : "&ya&""),if unknown _coinprec:(0,0) else: _coinprec fi); elseif (numeric ya): label.lrt(LATEX("\bfseries\color{white} Aller à x : "&xa&" y : \colorbox{white}{\textcolor{black}{"&decimal(ya)&"}}"),if unknown _coinprec:(0,0) else: _coinprec fi); else: label.lrt(LATEX("\bfseries\color{white} Aller à x : "&xa&" y : "&ya&""),if unknown _coinprec:(0,0) else: _coinprec fi); fi; ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Allera(expr pointeur)= save $; picture $,texto; texto=image( label.lrt(LATEX("\bfseries\color{white} Aller à : \colorbox{LightBlue}{\textcolor{black}{"&pointeur&" \tiny$\blacktriangledown$}}"),if unknown _coinprec:(0,0) else: _coinprec fi); ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Glisser(expr tps,xa,ya)= save $; picture $,texto; texto=image( label.lrt(LATEX("\bfseries\color{white}Glisser en "&if numeric tps:"\colorbox{white}{\textcolor{black}{"&decimal(tps)&"}}" else: tps fi&" seconde(s) à x : "&if numeric xa:"\colorbox{white}{\textcolor{black}{"&decimal(xa)&"}}" else: xa fi&" y : "&if numeric ya:"\colorbox{white}{\textcolor{black}{"&decimal(ya)&"}}" else: ya fi), if unknown _coinprec:(0,0) else:_coinprec fi); ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Ajouter(expr xa,xx)= save $; picture $,texto; texto=image( if numeric xa: label.lrt(LATEX("\bfseries\color{white} Ajouter \colorbox{white}{\textcolor{black}{"&decimal(xa)&"}} à "&xx),if unknown _coinprec: (0,0) else:_coinprec fi); else: label.lrt(LATEX("\bfseries\color{white} Ajouter "&xa&" à "&xx),if unknown _coinprec: (0,0) else:_coinprec fi); fi; ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Mettre(expr xa,xx)= save $; picture $,texto; texto=image( if numeric xa: label.lrt(LATEX("\bfseries\color{white}Donner la valeur \colorbox{white}{\textcolor{black}{"&decimal(xa)&"}} à "&xx),if unknown _coinprec: (0,0) else:_coinprec fi); else: label.lrt(LATEX("\bfseries\color{white}Donner la valeur "&xa&" à "&xx),if unknown _coinprec: (0,0) else:_coinprec fi); fi; ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef Rebondir= save $; picture $,texto; texto=image( label.lrt(LATEX("\bfseries\color{white} Rebondir si le bord est atteint"),if unknown _coinprec: (0,0) else:_coinprec fi); ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef; vardef FixerSensRotation(expr sens)= save $; picture $,texto; texto=image( label.lrt(LATEX("\bfseries\color{white} Fixer le sens de rotation \colorbox{LightBlue}{\textcolor{black}{"&sens&" \tiny$\blacktriangledown$}}"),if unknown _coinprec: (0,0) else:_coinprec fi); ); $=Affichage shifted (if unknown _coinprec:(0,0) else :_coinprec fi - ulcorner Affichage); _coinprec:=llcorner $; $ enddef;