diff options
author | Norbert Preining <norbert@preining.info> | 2023-04-15 03:01:57 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2023-04-15 03:01:57 +0000 |
commit | 78e6b19d4678a9d641c4afa4ca800288cfa0a9d5 (patch) | |
tree | ad774593055c02ade73402379b9df52568f6940f /info/drawing-with-metapost/src/closed-points.mp | |
parent | b17717e3829bc08efb71ec2537d9d894c8b82d45 (diff) |
CTAN sync 202304150301
Diffstat (limited to 'info/drawing-with-metapost/src/closed-points.mp')
-rw-r--r-- | info/drawing-with-metapost/src/closed-points.mp | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/info/drawing-with-metapost/src/closed-points.mp b/info/drawing-with-metapost/src/closed-points.mp new file mode 100644 index 0000000000..9abf287338 --- /dev/null +++ b/info/drawing-with-metapost/src/closed-points.mp @@ -0,0 +1,66 @@ +\documentclass{standalone} +\usepackage{luamplib} +\begin{document} +\mplibtextextlabel{enable} +\begin{mplibcode} + +vardef median primary P = + (origin for i=1 upto length P: + point i of P endfor) / length P +enddef; + +primarydef p enlarged s = p shifted -median p scaled s shifted median p enddef; + +path u, c, s; +u = unitsquare shifted -(1/2, 1/2) scaled 72; +c = fullcircle scaled 72 shifted 108 right; +s = (superellipse(right, up, left, down, 0.8)) scaled 36 shifted 216 right; + +picture p[]; +p1 = image( +draw origin--left scaled 50 withcolor background; +ahangle := 30; numeric r, x; r = 9/16; x = -1; +forsuffixes $=u, c, s: + drawarrow subpath(r, r + length $) of $; + draw fullcircle scaled 2 shifted median $ withcolor .67 red; + for i=0 upto length $-1: + fill fullcircle scaled 2 shifted point i of $ withcolor .67 red; + label(decimal i, point i of ($ enlarged 1.15)); + endfor +endfor); + +p2 = image( +draw origin--left scaled 50 withcolor background; +forsuffixes $=u,c,s: + fill median $ -- subpath (1,2) of $ -- cycle withcolor .8[blue,white]; + draw median $ -- point 1 of $; + draw median $ -- point 2 of $; + draw $; +endfor +); + +p3 = image( +draw origin--left scaled 50 withcolor background; +forsuffixes $=u,c,s: + r := 1/5 length $; + fill median $ -- subpath (0,r) of $ -- cycle withcolor .8[red,white]; + draw median $ -- point 0 of $; + draw median $ -- point r of $; + draw $; + endfor +); + +p4 = image( +draw origin--left scaled 50 withcolor background; +forsuffixes $=u,c,s: + fill median $ -- subpath (-1,1) of $ -- cycle withcolor .8[black,white]; + draw median $ -- point -1 of $; + draw median $ -- point 1 of $; + draw $; + endfor +); + +beginfig(1); +for i=1 upto 4: draw p[i] shifted (0,-108i); endfor +endfig; +\end{mplibcode} +\end{document} |