On 13/07/2021 15:14, Hans Hagen wrote:
How about:
\startuseMPgraphic{demo} for i=1 upto 10: draw fullcircle scaled (i*cm/3) withcolor (i*red/10) withpen pencircle scaled (bp/2) withstacking i ; endfor ; \stopuseMPgraphic
\unprotect
\tolerant\protected\def\useMPanimation[#1]#2% {\begingroup \scratchtoks\emptytoks
\dorecurse{10}{\etoksapp\scratchtoks{{\useMPgraphic[\c!stacking={\recurselevel}]{#2}}}}%
\expanded{\startanimation[#1]\the\scratchtoks\stopanimation}% \endgroup}
\protect
\setupinteraction[state=start]
\usemodule[animation]
\starttext \useMPanimation[menu=yes]{demo} \stoptext
Placing this excerpt in a file and compiling it I get an error:
$ context animation.tex
resolvers | formats | executing runner 'run luametatex format':
/home/vm/context/tex/texmf-linux-64/bin/luametatex --jobname="animation"
--fmt=/home/vm/context/tex/texmf-cache/luatex-cache/context/5fe67e0bfe781ce0dde776fb1556f32e/formats/luametatex/cont-en.fmt
--lua=/home/vm/context/tex/texmf-cache/luatex-cache/context/5fe67e0bfe781ce0dde776fb1556f32e/formats/luametatex/cont-en.lui
cont-yes.mkiv --c:currentrun=1 --c:fulljobname="./animation.tex"
--c:input="./animation.tex" --c:kindofrun=1 --c:maxnofruns=9
--c:texmfbinpath="/home/vm/context/tex/texmf-linux-64/bin"
open source > level 1, order 1, name 'cont-yes.mkiv'
fonts > beware: no fonts are loaded yet, using 'lm mono' in box
system >
system > ConTeXt ver: 2021.07.10 21:51 LMTX fmt: 2021.7.12
int: english/english
system > system > 'cont-new.mkxl' loaded
open source > level 2, order 2, name
'/home/vm/context/tex/texmf-context/tex/context/base/mkxl/cont-new.mkxl'
system > beware: some patches loaded from cont-new.mkiv
close source > level 2, order 2, name
'/home/vm/context/tex/texmf-context/tex/context/base/mkxl/cont-new.mkxl'
system > files > jobname './animation', input
'./animation.tex', result './animation'
fonts > latin modern fonts are not preloaded
languages > language 'en' is active
open source > level 2, order 3, name './animation.tex'
modules > 'animation' is not found
fonts > preloading latin modern fonts (second stage)
fonts > 'fallback modern-designsize rm 12pt' is loaded
tex error > tex error on line 31 in file ./animation.tex:
Undefined control sequence
\startanimation [menu=yes]{\useMPgraphic
[stacking={1}]{demo}}{\useMPgraphic [stacking={2}]{demo}}{\useMPgraphic
[stacking={3}]{demo}}{\useMPgraphic [stacking={4}]{demo}}{\useMPgraphic
[stacking={5}]{demo}}{\useMPgraphic [stacking={6}]{demo}}{\useMPgraphic
[stacking={7}]{demo}}{\useMPgraphic [stacking={8}]{demo}}{\useMPgraphic
[stacking={9}]{demo}}{\useMPgraphic [stacking={10}]{demo}}
<argument> \startanimation [menu=yes]\the \scratchtoks \stopanimation
<macro> \expanded #1->\xdef \m_syst_helpers_expanded {\noexpand #1
}\m_syst_helpers_expanded
<macro> \useMPanimation [#1]#2->\begingroup \scratchtoks \emptytoks \par
\dorecurse {10}{\etoksapp \scratchtoks {{\useMPgraphic [\c!stacking
={\recurselevel }]{#2}}}}\expanded {\startanimation [#1]\the
\scratchtoks \stopanimation }
\endgroup