Sorry, I was a little too enthusiastic, here here is the code :
Le 28 avr. 2022 à 08:41, Fabrice L
a écrit : Hi Keith,
Le 28 avr. 2022 à 06:05, Keith McKay via ntg-context
mailto:ntg-context@ntg.nl> a écrit : Hi,
In the MWE below I define an rgb colour, myColor1, using random numbers for the r, g and b components. I then use it to fill a unitsquare the size of the page, which works as expected. In the loop that follows I then use the defined colour, myColor1, along with white and the variable r to create shades of myColor1 as in the MWE below. However, myColor1 is not recognised in the loop and seems to be replaced by black, although if I use a predefined colour, in this case BurntSienna from the crayola collection, it works as expected. I have tried a number of ways to get this to work as shown in the code but without success. I would be grateful for any suggestions.
Best Wishes
Keith McKay
%%%%%%%%%%%%%%%%%%%%MWE%%%%%%%%%%%%% \setuppapersize[A4,portrait] \usecolors[crayola] \starttext \dorecurse{10}{ \startMPpage StartPage; \definecolor[name="myColor1", r = uniformdeviate(1), g = uniformdeviate(1), b = uniformdeviate(1) ] ; fill unitsquare xscaled PaperWidth yscaled PaperHeight withcolor "myColor1"; for i =2 step 2 until 10: r := i/10; fill unitsquare xscaled 5cm yscaled .5cm shifted (1cm,i*cm) withcolor(r[\MPcolor{BurntSienna},white]); fill unitsquare xscaled 5cm yscaled .5cm shifted (7cm,i*cm) withcolor(r[\MPcolor{myColor1}, white]); fill unitsquare xscaled 5cm yscaled .5cm shifted (13cm,i*cm) withcolor(r[\MPcolor{"myColor1"}, white]); %fill unitsquare xscaled 5cm yscaled .5cm shifted (13cm,i*cm) withcolor(r[myColor1 , white]); This line causes an error. endfor; StopPage; \stopMPpage }
\stoptext %%%%%%%%%%%%%%%%%%%%%%%%%%%end MWE%%%%%%%%%%%
Here is a solution, with works here, defining in another way the color « myColor »:
\setuppapersize[A4,portrait] \usecolors[crayola] \starttext \dorecurse{2}{ \startMPpage StartPage; color myColor ; myColor := (uniformdeviate(1),uniformdeviate(1),uniformdeviate(1)); fill unitsquare xscaled PaperWidth yscaled PaperHeight withcolor myColor; for i =2 step 2 until 10: r := i/10; fill unitsquare xscaled 5cm yscaled .5cm shifted (1cm,i*cm) withcolor(r[\MPcolor{BurntSienna},white]); fill unitsquare xscaled 5cm yscaled .5cm shifted (7cm,i*cm) withcolor(r[\MPcolor{myColor1}, white]); fill unitsquare xscaled 5cm yscaled .5cm shifted (13cm,i*cm) withcolor(r[\MPcolor{"myColor1"}, white]); %fill unitsquare xscaled 5cm yscaled .5cm shifted (13cm,i*cm) withcolor(r[myColor1 , white]); This line causes an error. endfor; StopPage; \stopMPpage }
\stoptext
I forgot to remove « myColor1 » from the others parts of the code. \setuppapersize[A4,portrait] \usecolors[crayola] \starttext \dorecurse{10}{ \startMPpage StartPage; color myColor ; myColor := (uniformdeviate(1),uniformdeviate(1),uniformdeviate(1)); fill unitsquare xscaled PaperWidth yscaled PaperHeight withcolor myColor; for i =2 step 2 until 10: r := i/10; fill unitsquare xscaled 5cm yscaled .5cm shifted (1cm,i*cm) withcolor(r[\MPcolor{BurntSienna},white]); fill unitsquare xscaled 5cm yscaled .5cm shifted (7cm,i*cm) withcolor(r[myColor, white]); fill unitsquare xscaled 5cm yscaled .5cm shifted (13cm,i*cm) withcolor(r[myColor, white]); %fill unitsquare xscaled 5cm yscaled .5cm shifted (13cm,i*cm) withcolor(r[myColor1 , white]); This line causes an error. endfor; StopPage; \stopMPpage } \stoptext
Fabrice.
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl mailto:ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl http://www.pragma-ade.nl/ / http://context.aanhet.net http://context.aanhet.net/ archive : https://bitbucket.org/phg/context-mirror/commits/ https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net http://contextgarden.net/ ___________________________________________________________________________________