<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html>  <head>   <title>tortue.mp</title>   <link rel="stylesheet" type="text/css" href="/syracuse/fabrique/styles/fabmetapost.css">  </head>  <body>   <a name="haut">   <h1 class="std">tortue.mp</h1>Jean-Michel Sarlat (<a href="mailto:jm-sarlat@melusine.eu.org">jm-sarlat@melusine.eu.org</a>)   <hr> <ul> <li><a href="#s.1.0">Exemples</a></li> <li><a href="#s.2.0">Description des macros</a></li></ul><hr> <br /> <p class="std">Le fichier <a href="tortue.html">tortue.mp</a> dfini quelques macros permettant le pilotage d'une <i>tortue</i> MetaPost.</p><a name="s.1.0"><h2 class="std"><a href="#haut"><img src="/syracuse/fabrique/images/up.png" border="0"></a> Exemples</h2>  <ul class="std">  <li> <a href="/syracuse/metapost/galerie/lsystems1/?arg=imagettes">L-Systems (1)</a> (Vgtaux). </li> <li> <a href="/syracuse/metapost/vrac/lsystem/">L-Systems (2)</a> (L-Systems en vrac). </li> <li> <a href="/syracuse/metapost/vrac/lsystem2/islands.html">L-Systems (islands)</a> (Variations sur une figure). </li></ul><a name="s.2.0"><h2 class="std"><a href="#haut"><img src="/syracuse/fabrique/images/up.png" border="0"></a> Description des macros</h2> <br /> <p class="std">&Agrave; chaque tortue est associ&nbsp;:  <ul class="std">  <li> un <strong>identifiant</strong> : <code class="std">numeric</code> (ce nombre permet de rfrencer les autres lments de la tortue dans les tableaux correspondants), </li> <li> une <strong>position</strong> : <code class="std">pair</code> (position actuelle), </li> <li> un <strong>chemin</strong> : <code class="std">path</code> (chemin parcouru depuis la cration de la tortue), </li> <li> une <strong>direction</strong> : <code class="std">numeric</code> (direction dans laquelle la tortue avance, c'est un angle), </li> <li> une <strong>orientation</strong> : <code class="std">numeric</code> (1 si la tortue est dans sa position normale sur la feuille, -1 si elle est <i>retourne</i>, c'est--dire sous la feuille). </li></ul>Voici maintenant les procdures&nbsp;:  <ul class="std">  <li> <code class="std">tortue(n,x,y,a,m)</code> -- cration de la tortue <code class="std">n</code>  la position <code class="std">(x,y)</code> dans la direction <code class="std">a</code> et dessus/dessous suivant <code class="std">m</code> (+1,-1). </li> <li> <code class="std">blop(n,m)</code> -- ddoublement de la tortue <code class="std">n</code> (cela fait un bruit lger), la tortue <code class="std">m</code> est cre avec les caractristiques (mais sans l'histoire) de la tortue <code class="std">n</code>. </li> <li> <code class="std">tourne(n,a)</code> -- la tortue <code class="std">n</code> change d'orientation, d'un angle <code class="std">a</code>. </li> <li> <code class="std">retourne(n)</code> -- la tortue <code class="std">n</code> se retourne ! </li> <li> <code class="std">avance(n,d,action)</code> -- la tortue <code class="std">n</code> avance d'une distance <code class="std">d</code> et xcute une <code class="std">action</code> sur son <i>chemin</i>. <code class="std">action</code> est le nom d'une procdure qui prend deux points (les deux extrmits du mouvement de la tortue) comme arguments. </li> <li> <code class="std">remplis(n,c)</code> -- la tortue <code class="std">n</code> remplit le chemin qu'elle a parcouru, ferm sur son origine, avec la couleur <code class="std">c</code>. </li></ul></p><br /> <p class="std"><a href="tortue.mp">Tlcharger le fichier tortue.mp</a></p>   <hr>   <i>Source      <a href="index.txt">index.txt</a>      moulin par <b>petitParseur(Z+B)</b>      le dimanche 16 fvrier 2003.</i>  </body> </html> 
