summaryrefslogtreecommitdiff
path: root/info/drawing-with-metapost/src/eggs-gold.mp
diff options
context:
space:
mode:
Diffstat (limited to 'info/drawing-with-metapost/src/eggs-gold.mp')
-rw-r--r--info/drawing-with-metapost/src/eggs-gold.mp63
1 files changed, 63 insertions, 0 deletions
diff --git a/info/drawing-with-metapost/src/eggs-gold.mp b/info/drawing-with-metapost/src/eggs-gold.mp
new file mode 100644
index 0000000000..6c13a6afb3
--- /dev/null
+++ b/info/drawing-with-metapost/src/eggs-gold.mp
@@ -0,0 +1,63 @@
+\documentclass{standalone}
+\usepackage{luamplib}
+\begin{document}
+\mplibtextextlabel{enable}
+\begin{mplibcode}
+input eggs-common
+beginfig(1);
+
+path base;
+base = fullcircle scaled 200;
+
+pair m, n, n', p;
+path aa, bb;
+
+m = 1/2 point 0 of base;
+aa = halfcircle scaled 2 abs (point 2 of base - m) shifted m cutbefore (origin -- 1000 up);
+n = point infinity of aa;
+n' = n reflectedabout(up, down);
+bb = subpath (0, 2) of base shifted n cutafter (origin -- 1000 up);
+p = point infinity of bb;
+
+path dome;
+path cap, cup, egg;
+dome = fullcircle
+ scaled 2 (abs(n - point 0 of base) - abs(n - point 0 of bb))
+ shifted p;
+cap = dome
+ cutbefore (point 4 of bb -- 2[n, point 4 of bb])
+ cutafter (point 4 of bb -- 2[n', point 4 of bb]);
+cup = subpath (4, 8) of base;
+path egg; egg = point 4 of cup {up} .. cap .. {down} cup & cycle;
+
+fill egg withpen pencircle scaled 2 withcolor eggshell;
+picture P; P = currentpicture;
+drawoptions(withpen pencircle scaled 1/4 withcolor dark_eggshell);
+draw m -- aa;
+draw bb;
+draw origin -- point 2 of base;
+draw base; draw dome;
+label.bot("$m$", m);
+label.ulft("$n$", n);
+label.urt("$n'$", n');
+% label.lft("$p$", p);
+
+drawoptions(withpen pencircle scaled 1/4 withcolor 1/2);
+draw n -- point 1 of egg;
+draw n' -- point 3 of egg;
+draw point 0 of egg -- point 4 of egg;
+draw egg;
+
+forsuffixes $=n, n', p, origin: draw $ withpen pencircle scaled 2; endfor
+draw m withpen pencircle scaled 2 withcolor dark_eggshell;
+draw numbered_points(egg);
+
+drawoptions();
+
+draw P shifted 240 right;
+
+
+endfig;
+\end{mplibcode}
+\end{document}
+