Re: [Syracuse] [metapost] grosse misère avec la macro drawboxed

Auteur: Jean-Michel Sarlat <jm-sarlat@melusine.eu.org>
Date: mar déc 05 2006 - 22:28:54 CET

david.cobac a écrit :
> david.cobac a écrit :
>> [...]
>> Alors comment faire un truc aussi simple sans que ça plante ?
>> [...]
>
> J'ai pas l'air d'inspirer grand-monde, alors je me réponds, voilà un
> bout de code qui fait ce que je veux mais ça fait "méthode du pauvre"...
>
> input boxes;
>
> vardef lesboites (text t) :=
> forsuffixes $=t :
> boxit.$(str $);
> endfor;
> enddef;
>
> vardef effacetout (text t) :=
> drawboxed(t);
> forsuffixes $=t :
> undraw bpath $ withpen pencircle scaled 2bp;
> unfill bpath $;
> endfor;
> enddef;

Tu peux remplacer cette dernière procédure par la suivante :
vardef fixboites (text t) = fixsize(t) ; fixpos(t); enddef;

Ainsi, les tailles et positions de tes boîtes seront fixées selon les
règles que tu as émises sans avoir à les représenter...

J'ai mis la suite des fichiers, considérés ici, en ligne :

http://melusine.eu.org/syracuse/metapost/temp/2006/cobac/

Ma proposition est le dernier fichier : cobac05.mp

> beginfig(0);
> lesboites(elsa,david,yann,sarah);
> elsa.e-david.w=yann.e-sarah.w=-(1cm,0);
> david.e-yann.w=-(3cm,0);
> %%
> effacetout(elsa,david,yann,sarah);

À remplacer par

     fixboites(elsa,david,yann,sarah);

> draw bpath yann withcolor red;
> draw pic elsa withcolor blue;
> draw pic david;
> draw bpath sarah withcolor .5white;
> endfig;
> end
>

    Jean-Michel
_______________________________________________
Liste de diffusion Syracuse
Syracuse@melusine.eu.org
http://melusine.eu.org/cgi-bin/mailman/listinfo/syracuse
Adresses alternatives du site :
http://syracuse.eu.org/syracuse/
http://193.55.139.7/syracuse/
Received on Tue Dec 5 22:28:02 2006

Cette archive a été créée par hypermail 2.1.8 : mer déc 06 2006 - 10:37:02 CET