\embed{definition}{ }

#### Un exemple de tracé de graphes par morceaux

    \\draw\lbrac 100,100 \rbrac\lbrac
       xrange -3,3
       yrange -3,3
       trange -3,0
       plot red, t,-t
       trange 0,3
       plot green, t,t
       plot navy, x/2
       trange -3,3
       plot blue , x/3 \rbrac
| \draw{100,100}{ xrange -3,3 yrange -3,3 trange -3,0 plot red, t,-t trange 0,3 plot green, t,t plot navy, x/2 trange -3,3 plot blue , x/3 }

#### Tracé de fonctions dont on ne connaît pas les bornes

      \text\lbrac f = \randitem(x^2 , sin(x) , exp(x)) \rbrac \text\lbrac borne = 1 , 2 \rbrac
      \text\lbrac borney = \slib(function/bounds \\f , 1 , 2) \rbrac
      \text\lbrac borney = \\borney[1]*1.1 , \\borney[2]*1.1 \rbrac
      \statement\lbrac
        \\draw\lbrac 200 , 200 \rbrac\lbrac
          xrange \\borne
          yrange \\borney
          plot blue,\\f \rbrac  \rbrac

Si la fonction que l'on veut tracer est aléatoire, le domaine des \(y) intéressant peut beaucoup varier. Aussi on peut utiliser le script `function/bounds` qui calcule approximativement ses bornes (mais ne pas s'en servir pour le maximum de la fonction...).

#### Une courbe en deux morceaux

Pour pouvoir dessiner une courbe en "deux morceaux", on doit voir les morceaux comme courbes paramétrées (en le paramètre `t` imposé). Par contre, si on veut ensuite dessiner une courbe sur toute la largeur (ici `plot blue , x/3`), il faut redéfinir `trange`.

#### Une rotation

Le même exemple mais auquel on a imposé une rotation de 45 degrés :

    \\draw\lbrac 100,100 \rbrac\lbrac
      xrange -3,3
      yrange -3,3
      rotate 45
      trange -3,0
      plot red, t,-t
      trange 0,3
      plot green, t,t
      plot navy , x/2
      trange -3,3
      plot blue , x/3 \rbrac
| \draw{100,100}{ xrange -3,3 yrange -3,3 rotate 45 trange -3,0 plot red, t,-t trange 0,3 plot green, t,t plot navy , x/2 trange -3,3 plot blue , x/3 }

#### Deux exemples d'animation

    \\draw\lbrac 100,100 \rbrac\lbrac animate 25,0.2,0
       xrange -3,3
       yrange -3,3
       plot navy , x*s
       trange -3,3
       plot blue , sin(2*pi*s*x) \rbrac
| \draw{100,100}{animate 25,0.2,0 `xrange` -3,3 `yrange` -3,3 `plot` blue , sin(2*pi*s*x) }

      \text\lbrac u = 1 - s^2 \rbrac
      \integer\lbrac h = \randint(100..200) \rbrac \\draw \rbrac 200,200 \rbrac\lbrac
         animate 25,0.2,0
         xrange 0,1
         yrange 0,1
         linewidth 4
         hline 0,1-s,\\h,255*s,255
         vline \\u,0,255*s,255,\\h*(1-s) \rbrac
| \def{text u = 1-s^2} \def{integer h = \randint(100`..`200)} \draw{100,100}{ animate 25,0.2,0 xrange 0,1 yrange 0,1 linewidth 4 hline 0,1-s,\h,255*s,255 vline \u,0,255*s,255,\h*(1-s) }

Ceci est un exemple d'animation. Mais n'abusez pas, sinon on risque de vous vider du serveur... Le paramètre `s` (dont le nom est imposé) ne doit jamais être défini auparavant, mais des variables peuvent être définies à partir de s (comme texte, ou fonction ?). Les couleurs sont ici codées avec RGB (trois nombres de 1 à 255). Les nombres qui suivent `animate` sont le nombre de cadres, un temps en secondes et le nombre de répétitions. La ligne commençant par `animate` doit impérativement être en premier.
\reload{}

#### Quadrillage

\link{quadrille}