ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Hans Hagen <j.hagen@xs4all.nl>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>,
	Damien Thiriet <damien@thiriet.web4me.fr>
Subject: Re: troubles with \MPinclusions
Date: Thu, 21 Feb 2019 10:44:53 +0100	[thread overview]
Message-ID: <2b77003e-c9e6-9de8-53ef-64fe3a419331@xs4all.nl> (raw)
In-Reply-To: <20190221090307.GA53231@valencay.home>

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
___________________________________________________________________________________

  reply	other threads:[~2019-02-21  9:44 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-21  9:03 Damien Thiriet
2019-02-21  9:44 ` Hans Hagen [this message]
2019-02-21  9:51 ` Taco Hoekwater

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2b77003e-c9e6-9de8-53ef-64fe3a419331@xs4all.nl \
    --to=j.hagen@xs4all.nl \
    --cc=damien@thiriet.web4me.fr \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).