summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/metaplot/examples/figures_2-7.mp
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/metaplot/examples/figures_2-7.mp')
-rw-r--r--Master/texmf-dist/doc/latex/metaplot/examples/figures_2-7.mp233
1 files changed, 233 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/metaplot/examples/figures_2-7.mp b/Master/texmf-dist/doc/latex/metaplot/examples/figures_2-7.mp
new file mode 100644
index 00000000000..cc2e8be970e
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/metaplot/examples/figures_2-7.mp
@@ -0,0 +1,233 @@
+% Figures 2-7 from _MetaPlot, MetaContour, and Other Collaborations
+% with METAPOST_, preprint version, given at the Practical TeX 2004
+% conference.
+
+prologues:=0;
+input metaplot % MetaPlot macros
+
+% capillary.mp and capillary2.mp are both produced as output of the
+% program capillary.cc. The relevant parameters in the program
+% (lines 29-30) are:
+%
+% For capillary.mp:
+% double theta = pi/4.0;
+% double d = 1.0;
+%
+% For capillary2.mp:
+% double theta = pi/6.0;
+% double d = 1.0;
+
+input capillary % capillary plot object
+input capillary2 % capillaryb plot object
+
+
+% Figure 2: The capillary surface, in its unadorned form as plot
+% object elements scaled to 2.0in by 0.75in.
+
+plot_instantiate(plotA, capillary)
+plotA.pageleft = 0.0;
+plotA.pagebottom = 0.0;
+plotA.pagewidth = 2.0in;
+plotA.pageheight = 0.75in;
+
+beginfig(2)
+ draw plotA.plot(fplot) withcolor 0.85white;
+ draw plotA.plot(lplot) withpen pencircle scaled 1pt;
+endfig;
+
+
+% Figure 3: The capillary surface, with equal y and z scales, a page
+% height of 0.75in, and appropriate annotations.
+
+plot_instantiate(plotB, capillary)
+plotB.pageleft = 0.0;
+plotB.pagebottom = 0.0;
+plotB.pageheight = 0.75in;
+plot_setequalaxes(plotB);
+
+beginfig(3)
+ draw plotB.plot(fplot) withcolor 0.85white;
+ linecap := butt;
+ pickup pencircle scaled 1pt;
+ % z-axis (vertical)
+ z1 = (plotB.pageleft, plotB.pagebottom);
+ z2 = (plotB.pageleft, plotB.pagetop + 0.1in);
+ % y-axis (horizontal)
+ z3 = (plotB.pageleft, plot_ypageloc(plotB,0.0));
+ z4 = (plotB.pageright + 0.1in,
+ plot_ypageloc(plotB,0.0));
+ drawarrow z1 -- z2;
+ label.top(btex $z$ etex, z2);
+ drawarrow z3 -- z4;
+ label.rt(btex $y$ etex, z4);
+ pickup pencircle scaled 0.25pt;
+ % Label for contact angle
+ z5 = plotB.plot(contactpoint);
+ z6 = z5 + 0.24in
+ * dir(-90 + capillary.contactangle);
+ z7 = z5 + 0.18in
+ * dir(-90 + 0.5*capillary.contactangle);
+ draw z5 -- z6;
+ label(btex $\theta$ etex, z7);
+endfig;
+
+
+% Figure 4: The capillary surface with parameters and page height as
+% in Figure 3, but with $\theta = \pi/6$.
+
+plot_instantiate(plotC, capillaryb)
+plotC.pageleft = 0.0;
+plotC.pagebottom = 0.0;
+plotC.pageheight = 0.75in;
+plot_setequalaxes(plotC);
+
+beginfig(4)
+ draw plotC.plot(fplot) withcolor 0.85white;
+ linecap := butt;
+ pickup pencircle scaled 1pt;
+ % z-axis (vertical)
+ z1 = (plotC.pageleft, plotC.pagebottom);
+ z2 = (plotC.pageleft, plotC.pagetop + 0.1in);
+ % y-axis (horizontal)
+ z3 = (plotC.pageleft, plot_ypageloc(plotC,0.0));
+ z4 = (plotC.pageright + 0.1in,
+ plot_ypageloc(plotC,0.0));
+ drawarrow z1 -- z2;
+ label.top(btex $z$ etex, z2);
+ drawarrow z3 -- z4;
+ label.rt(btex $y$ etex, z4);
+ pickup pencircle scaled 0.25pt;
+ % Label for contact angle
+ z5 = plotC.plot(contactpoint);
+ z6 = z5 + 0.24in
+ * dir(-90 + capillaryb.contactangle);
+ z7 = z5 + 0.18in
+ * dir(-90 + 0.5*capillaryb.contactangle);
+ draw z5 -- z6;
+ label(btex $\theta$ etex, z7);
+endfig;
+
+
+% Figure 5: Two capillary surfaces, as in Figure 3 and Figure 4, showing
+% the difference in the curves as a result of varying $\theta$.
+
+plot_instantiate(plotD, capillary)
+plotD.pageleft = 0.0;
+plotD.pagebottom = 0.0;
+plotD.pageheight = 0.75in;
+plot_setequalaxes(plotD);
+
+plot_instantiate(plotE, capillaryb)
+plot_zpageloc(plotD, 0.0, 0.0)
+ = plot_zpageloc(plotE, 0.0, 0.0);
+plot_zpageloc(plotD, 1.0, 1.0)
+ = plot_zpageloc(plotE, 1.0, 1.0);
+
+beginfig(5)
+ linecap := butt;
+ pickup pencircle scaled 1pt;
+ draw plotD.plot(fplot) withcolor 0.85white;
+ draw plotE.plot(lplot) dashed evenly
+ withpen pencircle scaled 0.5pt;
+ % z-axis (vertical)
+ z1 = (plotD.pageleft, plotD.pagebottom);
+ x2 = plotD.pageleft;
+ y2 = max(plotD.pagetop, plotE.pagetop) + 0.1in;
+ % y-axis (horizontal)
+ z3 = (plotD.pageleft, plot_ypageloc(plotD,0.0));
+ x4 = max(plotD.pageright, plotE.pageright) + 0.1in;
+ y4 = plot_ypageloc(plotD,0.0);
+ drawarrow z1 -- z2;
+ label.top(btex $z$ etex, z2);
+ drawarrow z3 -- z4;
+ label.rt(btex $y$ etex, z4);
+endfig;
+end
+
+
+% Figure 6: A repeat of Figure 5, with simple grid labels added.
+
+beginfig(6)
+ linecap := butt;
+ pickup pencircle scaled 1pt;
+ draw plotD.plot(fplot) withcolor 0.85white;
+ draw plotE.plot(lplot) dashed evenly
+ withpen pencircle scaled 0.5pt;
+ % z-axis (vertical)
+ z1 = (plotD.pageleft, plotD.pagebottom);
+ x2 = plotD.pageleft;
+ y2 = max(plotD.pagetop, plotE.pagetop) + 0.1in;
+ % y-axis (horizontal)
+ z3 = (plotD.pageleft, plot_ypageloc(plotD,0.0));
+ x4 = max(plotD.pageright, plotE.pageright) + 0.1in;
+ y4 = plot_ypageloc(plotD,0.0);
+ drawarrow z1 -- z2;
+ label.top(btex $z$ etex, z2);
+ drawarrow z3 -- z4;
+ label.rt(btex $y$ etex, z4);
+ x5 = plotD.pageleft;
+ x6 = x4;
+ y5 = y6 = plotD.pagebottom;
+ draw plot_xtickscale(plotD)(
+ z5, z6, 0.08in, 0.06in, down,
+ 0.0, 1.0, "%3f")
+ withpen pencircle scaled 0.5pt;
+ y7 = plotD.pagebottom;
+ y8 = y2;
+ x7 = x8 = plotD.pageleft;
+ draw plot_ytickscale(plotD)(
+ z7, z8, 0.08in, 0.06in, left,
+ 0.0, 0.5, "%3f")
+ withpen pencircle scaled 0.5pt;
+endfig;
+
+
+% Figure 7: A repeat of Figure 5 again, with more advanced grid labels.
+
+beginfig(7)
+ linecap := butt;
+ pickup pencircle scaled 1pt;
+ draw plotD.plot(fplot) withcolor 0.85white;
+ draw plotE.plot(lplot) dashed evenly
+ withpen pencircle scaled 0.5pt;
+ % z-axis (vertical)
+ z1 = (plotD.pageleft, plotD.pagebottom);
+ x2 = plotD.pageleft;
+ y2 = max(plotD.pagetop, plotE.pagetop) + 0.1in;
+ % y-axis (horizontal)
+ z3 = (plotD.pageleft, plot_ypageloc(plotD,0.0));
+ x4 = max(plotD.pageright, plotE.pageright) + 0.1in;
+ y4 = plot_ypageloc(plotD,0.0);
+ drawarrow z1 -- z2;
+ label.top(btex $z$ etex, z2);
+ drawarrow z3 -- z4;
+ label.rt(btex $y$ etex, z4);
+ x5 = plotD.pageleft;
+ x6 = x4 - 0.1in;
+ y5 = y6 = plotD.pagebottom - 0.06in;
+ draw plot_xtickscale(plotD)(
+ z5, z6, 0.08in, 0.06in, down,
+ 0.5, 1.0, "%3f")
+ withpen pencircle scaled 0.5pt;
+ draw plot_xtickscale(plotD)(
+ z5, z6, 0.08in, 0.06in, down,
+ 0.0, 1.0, "")
+ withpen pencircle scaled 0.5pt;
+ draw plot_xtickscale(plotD)(
+ z5, z6, 0.04in, 0.06in, down,
+ 0.0, 0.1, "")
+ withpen pencircle scaled 0.5pt;
+ y7 = y4;
+ y8 = y2 - 0.1in;
+ x7 = x8 = plotD.pageleft - 0.06in;
+ draw plot_ytickscale(plotD)(
+ z7, z8, 0.08in, 0.06in, left,
+ 0.0, 0.5, "%3f")
+ withpen pencircle scaled 0.5pt;
+ draw plot_ytickscale(plotD)(
+ z7, z8, 0.04in, 0.06in, left,
+ 0.0, 0.1, "")
+ withpen pencircle scaled 0.5pt;
+endfig;
+
+end