On 2/21/2019 10:03 AM, Damien Thiriet wrote:
Hi,
Why does (1) compile, whereas (2) doesn't?
I can't understand why can MPinclusions store path and not pairs.
%%%%%%%%%%%% (1) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setuppapersize[A4,landscape]
\startMPinclusions
u:=1mm ;
%fond
path p ;
p:= (0,0) -- (150u,0) -- (150u,95u) -- (0,95u) -- cycle ;
pair x[] ;
x[0]:= (20u,90u) ;
x[1]:= (40u,90u) ;
x[2]:= (90u,90u) ;
x[3]:= (140u,90u) ;
\stopMPinclusions
\startreusableMPgraphic{test}
draw p ;
\stopreusableMPgraphic
\starttext
\reuseMPgraphic{test}
\stoptext
%%%%%%%%%%%% (1) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setuppapersize[A4,landscape]
\startMPinclusions
u:=1mm ;
%fond
path p ;
p:= (0,0) -- (150u,0) -- (150u,95u) -- (0,95u) -- cycle ;
pair x[] ;
x[0]:= (20u,90u) ;
x[1]:= (40u,90u) ;
x[2]:= (90u,90u) ;
x[3]:= (140u,90u) ;
\stopMPinclusions
\startreusableMPgraphic{test}
draw p ;
for i=0 step 1 until 3 :
drawdot x[i] ;
endfor ;
\stopreusableMPgraphic
\starttext
\reuseMPgraphic{test}
More generaly, which kind of variables cannot be stored in
\startMPinclusions ?
those that are likely to clash later
\startMPinclusions
vardef MyStuff =
numeric u;
u:=1mm ;
path p ;
p:= (0,0) -- (150u,0) -- (150u,95u) -- (0,95u) -- cycle ;
pair x[] ;
x[0]:= (20u,90u) ;
x[1]:= (40u,90u) ;
x[2]:= (90u,90u) ;
x[3]:= (140u,90u) ;
enddef ;
\stopMPinclusions
\startreusableMPgraphic{test}
save p, u, x ;
MyStuff ;
draw p ;
for i=0 step 1 until 3 :
drawdot x[i] ;
endfor ;
\stopreusableMPgraphic
\starttext
\reuseMPgraphic{test}
\stoptext
but in your case you could as well put the inclusions in the test
graphic itself
\startreusableMPgraphic{test}
save p, u, x ;
numeric u;
u:=1mm ;
path p ;
p:= (0,0) -- (150u,0) -- (150u,95u) -- (0,95u) -- cycle ;
pair x[] ;
x[0]:= (20u,90u) ;
x[1]:= (40u,90u) ;
x[2]:= (90u,90u) ;
x[3]:= (140u,90u) ;
draw p ;
for i=0 step 1 until 3 :
drawdot x[i] ;
endfor ;
\stopreusableMPgraphic
\starttext
\reuseMPgraphic{test}
\stoptext
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://context.aanhet.net
archive : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___________________________________________________________________________________