Difference between revisions of "Command/startuniqueMPgraphic"
< Command
Jump to navigation
Jump to search
(Created page with "{{Reference |name=startuniqueMPgraphic |attributes= }} == Syntax == <table cellspacing="4" cellpadding="2" class="cmd"> <tr> <td colspan="2" class="cmd"...") |
m (Taco moved page Environment/uniqueMPgraphic to Command/startuniqueMPgraphic over a redirect without leaving a redirect) |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 3: | Line 3: | ||
|attributes= | |attributes= | ||
}} | }} | ||
+ | |||
+ | == [[Help:Reference|Syntax]] (autogenerated) == | ||
+ | <syntax>startuniqueMPgraphic</syntax> | ||
== [[Help:Reference|Syntax]] == | == [[Help:Reference|Syntax]] == | ||
Line 18: | Line 21: | ||
== Description == | == Description == | ||
− | Define code for a MetaPost graphic. The graphic can be placed in the document with {{cmd|uniqueMPgraphic}}, | + | Define code for a MetaPost graphic. The graphic can be placed in the document with {{cmd|uniqueMPgraphic}}. Every time any of the following variables changes, the graphic is recompiled: |
+ | |||
+ | * {{cmd|overlaywidth}} | ||
+ | * {{cmd|overlayheight}} | ||
+ | * {{cmd|overlaydepth}} | ||
+ | * {{cmd|overlaycolor}} | ||
+ | * {{cmd|overlaylinecolor}} | ||
== Example == | == Example == | ||
Line 32: | Line 41: | ||
\def\mycolor{.625blue} | \def\mycolor{.625blue} | ||
blue: \uniqueMPgraphic{name} | blue: \uniqueMPgraphic{name} | ||
+ | </context> | ||
+ | |||
+ | This illustrates the fact that graphic is reused if the dimensions don't change. | ||
+ | |||
+ | <context source=yes> | ||
+ | \startuniqueMPgraphic{randomcolor} | ||
+ | fill unitsquare | ||
+ | xyscaled (\overlaywidth, \overlayheight) | ||
+ | % `uniformdeviate 1` produces a random number between 0 and 1 | ||
+ | withcolor (uniformdeviate 1, uniformdeviate 1, uniformdeviate 1); | ||
+ | \stopuniqueMPgraphic | ||
+ | |||
+ | \defineoverlay | ||
+ | [beta] | ||
+ | [\uniqueMPgraphic{randomcolor}] | ||
+ | |||
+ | \dontleavehmode | ||
+ | \framed[background=beta]{narrow} | ||
+ | \framed[background=beta]{narrow} | ||
+ | \framed[background=beta]{rather wide} | ||
</context> | </context> | ||
Latest revision as of 09:50, 7 August 2020
\startuniqueMPgraphic
Syntax (autogenerated)
\startuniqueMPgraphic{...}{...,...} ... \stopuniqueMPgraphic | |
{...} | name |
{...,...} | key |
Syntax
\startuniqueMPgraphic{...} | |
{...} | name under which the graphic will be known |
Description
Define code for a MetaPost graphic. The graphic can be placed in the document with \uniqueMPgraphic. Every time any of the following variables changes, the graphic is recompiled:
Example
\def\mycolor{.625red} \startuniqueMPgraphic{name} fill fullcircle scaled 20pt withcolor \mycolor; \stopuniqueMPgraphic red: \uniqueMPgraphic{name} \def\mycolor{.625blue} blue: \uniqueMPgraphic{name}
This illustrates the fact that graphic is reused if the dimensions don't change.
\startuniqueMPgraphic{randomcolor} fill unitsquare xyscaled (\overlaywidth, \overlayheight) % `uniformdeviate 1` produces a random number between 0 and 1 withcolor (uniformdeviate 1, uniformdeviate 1, uniformdeviate 1); \stopuniqueMPgraphic \defineoverlay [beta] [\uniqueMPgraphic{randomcolor}] \dontleavehmode \framed[background=beta]{narrow} \framed[background=beta]{narrow} \framed[background=beta]{rather wide}
See also
- \defineMPinstance
- \setupMPinstance
- \startMPinclusions
- \startMPenvironment — deprecated
- \startMPcode
- \startuseMPgraphic — dynamic graphics that are recompiled at every use
- \useMPgraphic — use a dynamic graphic
- \startuniqueMPgraphic — dynamic graphics that are recompiled when parameters (width, height, depth, background color, line color) change
- \uniqueMPgraphic — use a dynamic graphic
- \startreusableMPgraphic — static graphics that are compiled once
- \reuseMPgraphic — use a static graphic
- \startstaticMPfigure — standalone graphics
- \usestaticMPfigure — use a standalone graphic
- \startMPpage — a page just large enough to fit its MetaPost contents
- MetaFun - MetaPost in ConTeXt
Help from ConTeXt-Mailinglist/Forum
All issues with: