summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/profcollege/metapost/PfCTurtleTestRemplis.mp
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/profcollege/metapost/PfCTurtleTestRemplis.mp')
-rw-r--r--macros/latex/contrib/profcollege/metapost/PfCTurtleTestRemplis.mp98
1 files changed, 98 insertions, 0 deletions
diff --git a/macros/latex/contrib/profcollege/metapost/PfCTurtleTestRemplis.mp b/macros/latex/contrib/profcollege/metapost/PfCTurtleTestRemplis.mp
new file mode 100644
index 0000000000..90d9e7944a
--- /dev/null
+++ b/macros/latex/contrib/profcollege/metapost/PfCTurtleTestRemplis.mp
@@ -0,0 +1,98 @@
+boolean Poser,Etapes,STOP;
+Poser=true;
+STOP=false;
+
+color CouleurRemplis;
+
+vardef Stop=
+ if Etapes:
+ if k>Total-1:
+ STOP:=true;
+ fi;
+ fi;
+enddef;
+
+vardef Av(expr pas)=
+ Stop;
+ if STOP=false:
+ A[k+1]-A[k]=ut*pas*VecteurDpt;
+ B[tt+1]:=A[k+1];
+ RetiensAngle[k+1]:=RetiensAngle[k];
+ if Poser:
+ draw A[k]--A[k+1] withpen pencircle scaled Epaisseur;
+ %drawarrow A[k]--(A[k]+10*VecteurDpt) withcolor blue;
+ fi;
+ fi;
+ k:=k+1;
+ tt:=tt+1;
+enddef;
+
+vardef Re(expr pas)=
+ Stop;
+ if STOP=false:
+ A[k+1]-A[k]=-ut*pas*VecteurDpt;
+ B[tt+1]:=A[k+1];
+ RetiensAngle[k+1]:=RetiensAngle[k];
+ if Poser:
+ draw A[k]--A[k+1] withpen pencircle scaled Epaisseur;
+ %drawarrow A[k]--(A[k]+10*VecteurDpt) withcolor blue;
+ fi;
+ fi;
+ k:=k+1;
+ tt:=tt+1;
+enddef;
+
+vardef Tg(expr pas)=
+ Stop;
+ if STOP=false:
+ VecteurDpt:=rotation(VecteurDpt,(0,0),pas);
+ A[k+1]:=A[k];
+ B[tt+1]:=A[k+1];
+ %drawarrow A[k]--(A[k]+10*VecteurDpt) withcolor blue;
+ RetiensAngle[k+1]:=RetiensAngle[k]+pas;
+ Angle:=Angle+pas;
+ fi;
+ k:=k+1;
+ tt:=tt+1;
+enddef;
+
+vardef Td(expr pas)=
+ Stop;
+ if STOP=false:
+ VecteurDpt:=rotation(VecteurDpt,(0,0),-pas);
+ A[k+1]:=A[k];
+ B[tt+1]:=A[k+1];
+ %drawarrow A[k]--(A[k]+10*VecteurDpt) withcolor blue;
+ RetiensAngle[k+1]:=RetiensAngle[k]-pas;
+ Angle:=Angle-pas;
+ fi;
+ k:=k+1;
+ tt:=tt+1;
+enddef;
+
+vardef Bc=
+ Stop;
+ if STOP=false:
+ Poser:=true;
+ fi;
+enddef;
+
+vardef Lc=
+ Stop;
+ if STOP=false:
+ Poser:=false;
+ fi;
+enddef;
+
+vardef Teleporter(expr xpas,ypas)=
+ Stop;
+ if STOP=false:
+ A[k+1]:=A[k]+ut*(xpas,ypas);
+ B[tt+1]:=A[k+1];
+ fi;
+ k:=k+1;
+ tt:=tt+1;
+enddef;
+
+k=0;
+tt=0;