![](https://secure.gravatar.com/avatar/44ca9eda7aaa681c0e3b3e90125c56b0.jpg?s=120&d=mm&r=g)
Hi, there are some problems in combination with the 'withshade' operator in mlib. this must be patched in mp-mlib.mp (':=' instead of '='; too much lua ;) vardef define_circular_shade (expr a, b, ra, rb, ca, cb) = _defined_cs_ := _defined_cs_ + 1 ; _defined_cs_pre_ [_defined_cs_] := "cs" ; _defined_cs_post_[_defined_cs_] := "0 1 " & decimal shadefactor & " " & colordecimals ca & " " & ddecimal (a shifted shadeoffset) & " " & decimal ra & " " & colordecimals cb & " " & ddecimal (b shifted shadeoffset) & " " & decimal rb ; _defined_cs_ enddef ; vardef define_linear_shade (expr a, b, ca, cb) = _defined_cs_ := _defined_cs_ + 1 ; _defined_cs_pre_ [_defined_cs_] := "ls" ; _defined_cs_post_[_defined_cs_] := "0 1 " & decimal shadefactor & " " & colordecimals ca & " " & ddecimal (a shifted shadeoffset) & " " colordecimals cb & " " & ddecimal (b shifted shadeoffset) ; _defined_cs_ enddef ; i still get an error after this patch, because '_defined_cs_' is not increased somehow (donno why, not my day; cleared mem, remade formats). _defined_cs_pre_0 is of course undefined. [..] report >> mp terminal: ! Missing argument to withshade. <to be read again> define_linear_shade <*> ...,1cm); fill p withshade define_linear_shade (p,1,red,blue); ;
unknown string _defined_cs_pre_0 ! Improper type. <to be read again> withpostscript withshade->...fined_cs_pre_[(EXPR0)]withpostscript
._defined_cs_post_[(EXPR0)] <to be read again> define_linear_shade <*> ...,1cm); fill p withshade define_linear_shade (p,1,red,blue); ;
_defined_cs_post_0define_linear_shade ! Improper type. <to be read again> ( <*> ...1cm); fill p withshade define_linear_shade( p,1,red,blue); ; ! Extra tokens will be flushed. <to be read again> ( <*> ...1cm); fill p withshade define_linear_shade( p,1,red,blue); ;
report >> mp error: unknown, no error, terminal or log messages [..] here the test code: \setupcolors[state=start] \starttext \null \startMPcode path p; p:= unitsquare xyscaled(10cm,1cm); fill p withshade define_linear_shade(p,1,red,blue); \stopMPcode \stoptext
![](https://secure.gravatar.com/avatar/49e63acb01f2ca80efce7eed08310ce8.jpg?s=120&d=mm&r=g)
Peter Rolf wrote:
Hi,
there are some problems in combination with the 'withshade' operator in mlib.
this must be patched in mp-mlib.mp (':=' instead of '='; too much lua ;)
indeed
i still get an error after this patch, because '_defined_cs_' is not increased somehow (donno why, not my day; cleared mem, remade formats). _defined_cs_pre_0 is of course undefined.
did you delete the cont-en-metafun format in the cache? ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
![](https://secure.gravatar.com/avatar/44ca9eda7aaa681c0e3b3e90125c56b0.jpg?s=120&d=mm&r=g)
Hans Hagen schrieb:
Peter Rolf wrote:
Hi,
there are some problems in combination with the 'withshade' operator in mlib.
this must be patched in mp-mlib.mp (':=' instead of '='; too much lua ;)
indeed
i still get an error after this patch, because '_defined_cs_' is not increased somehow (donno why, not my day; cleared mem, remade formats). _defined_cs_pre_0 is of course undefined.
did you delete the cont-en-metafun format in the cache?
yes, several times. if it works for you, i just have bad luck. as said: not my day..
----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | 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://tex.aanhet.net archive : https://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________
![](https://secure.gravatar.com/avatar/44ca9eda7aaa681c0e3b3e90125c56b0.jpg?s=120&d=mm&r=g)
Peter Rolf schrieb:
Hans Hagen schrieb:
Peter Rolf wrote:
Hi,
there are some problems in combination with the 'withshade' operator in mlib.
this must be patched in mp-mlib.mp (':=' instead of '='; too much lua ;) indeed
i still get an error after this patch, because '_defined_cs_' is not increased somehow (donno why, not my day; cleared mem, remade formats). _defined_cs_pre_0 is of course undefined. did you delete the cont-en-metafun format in the cache?
yes, several times. if it works for you, i just have bad luck. as said: not my day..
don't know if i'm still out of luck or if it's a general problem (luatex trunc, context beta 03.05.2008). there was also some 'hide' missing, but anyway i still get the same error. code looks ok to me, but i'm no experienced mp programmer. maybe a luatex/mplib problem with vardef grouping? i'm puzzled. vardef define_linear_shade (expr a, b, ca, cb) = hide (_defined_cs_ := _defined_cs_ + 1 ; _defined_cs_pre_ [_defined_cs_] := "ls" ; _defined_cs_post_[_defined_cs_] := "0 1 " & decimal shadefactor & " " & colordecimals ca & " " & ddecimal (a shifted shadeoffset) & " " colordecimals cb & " " & ddecimal (b shifted shadeoffset) ) _defined_cs_ enddef ; same for define_circular_shade... % testfile --------------------------------- % engine=luatex \setupcolors[state=start] \starttext \null \startMPcode path p; p:= unitsquare xyscaled(10cm,1cm); fill p withshade define_linear_shade(p,1,red,blue); \stopMPcode \stoptext % results in -------------------------------- [..] systems : begin file shade at line 3 mplib : making format: metafun.mp, name: r:/tex/luatex-cache/context/be74c9ce1715b7e02ccf1b16a39c2fc2/formats/cont-en-metafun.mem mplib : loading format: metafun.mp, name: r:/tex/luatex-cache/context/be74c9ce1715b7e02ccf1b16a39c2fc2/formats/cont-en-metafun.mem report >> mp terminal: ! Missing argument to withshade. <to be read again> define_linear_shade <*> ...,1cm); fill p withshade define_linear_shade (p,1,red,blue); ;
unknown string _defined_cs_pre_0 ! Improper type. <to be read again> withpostscript withshade->...fined_cs_pre_[(EXPR0)]withpostscript
._defined_cs_post_[(EXPR0)] <to be read again> define_linear_shade <*> ...,1cm); fill p withshade define_linear_shade (p,1,red,blue); ;
_defined_cs_post_0define_linear_shade ! Improper type. <to be read again> ( <*> ...1cm); fill p withshade define_linear_shade( p,1,red,blue); ; ! Extra tokens will be flushed. <to be read again> ( <*> ...1cm); fill p withshade define_linear_shade( p,1,red,blue); ;
report >> mp error: unknown, no error, terminal or log messages fonts : resetting map file list [..] any help welcome. peter
![](https://secure.gravatar.com/avatar/49e63acb01f2ca80efce7eed08310ce8.jpg?s=120&d=mm&r=g)
Peter Rolf wrote:
vardef define_linear_shade (expr a, b, ca, cb) = hide (_defined_cs_ := _defined_cs_ + 1 ; _defined_cs_pre_ [_defined_cs_] := "ls" ; _defined_cs_post_[_defined_cs_] := "0 1 " & decimal shadefactor & " " & colordecimals ca & " " & ddecimal (a shifted shadeoffset) & " " colordecimals cb & " " & ddecimal (b shifted shadeoffset) ) _defined_cs_ enddef ;
same for define_circular_shade...
% testfile --------------------------------- % engine=luatex \setupcolors[state=start] \starttext
\null \startMPcode path p; p:= unitsquare xyscaled(10cm,1cm); fill p withshade define_linear_shade(p,1,red,blue); \stopMPcode
\stoptext
i uploaded a new beta but anyhow, your definition is wrong \startMPcode path p; p:= unitsquare xyscaled (10cm,1cm) ; fill p withshade (define_linear_shade(llcorner p, urcorner p,red,blue)) ; \stopMPcode so, the first two arguments are pairs ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
![](https://secure.gravatar.com/avatar/44ca9eda7aaa681c0e3b3e90125c56b0.jpg?s=120&d=mm&r=g)
Hans Hagen schrieb:
Peter Rolf wrote:
vardef define_linear_shade (expr a, b, ca, cb) = hide (_defined_cs_ := _defined_cs_ + 1 ; _defined_cs_pre_ [_defined_cs_] := "ls" ; _defined_cs_post_[_defined_cs_] := "0 1 " & decimal shadefactor & " " & colordecimals ca & " " & ddecimal (a shifted shadeoffset) & " " colordecimals cb & " " & ddecimal (b shifted shadeoffset) ) _defined_cs_ enddef ;
same for define_circular_shade...
% testfile --------------------------------- % engine=luatex \setupcolors[state=start] \starttext
\null \startMPcode path p; p:= unitsquare xyscaled(10cm,1cm); fill p withshade define_linear_shade(p,1,red,blue); \stopMPcode
\stoptext
i uploaded a new beta but anyhow, your definition is wrong
\startMPcode path p; p:= unitsquare xyscaled (10cm,1cm) ; fill p withshade (define_linear_shade(llcorner p, urcorner p,red,blue)) ; \stopMPcode
so, the first two arguments are pairs
oeps. mea culpa :( thanks for taking the time. the corrected example works with the latest beta (and probably with any older versions too). and yes, i'm an idiot. peter
----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | 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://tex.aanhet.net archive : https://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________
participants (2)
-
Hans Hagen
-
Peter Rolf