diff options
Diffstat (limited to 'Master/texmf-dist/doc/luatex/luaintro/07-02-2.lualtx')
-rw-r--r-- | Master/texmf-dist/doc/luatex/luaintro/07-02-2.lualtx | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/luatex/luaintro/07-02-2.lualtx b/Master/texmf-dist/doc/luatex/luaintro/07-02-2.lualtx new file mode 100644 index 00000000000..4c837415b70 --- /dev/null +++ b/Master/texmf-dist/doc/luatex/luaintro/07-02-2.lualtx @@ -0,0 +1,53 @@ +%% +%% Ein Beispiel der DANTE-Edition +%% +%% 1. Auflage +%% +%% Beispiel 07-02-2 auf Seite 149. +%% +%% Copyright (C) 2013 Herbert Voss +%% +%% It may be distributed and/or modified under the conditions +%% of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% +%% See http://www.latex-project.org/lppl.txt for details. +%% +%% +%% ==== +% Show page(s) 1 +%% +%% +\documentclass[]{exaarticle} +\pagestyle{empty} +\setlength\textwidth{352.81416pt} +%StartShownPreambleCommands +\usepackage{luamplib} \newsavebox\MPBox +%StopShownPreambleCommands +\begin{document} +\begin{lrbox}{\MPBox} +\begin{mplibcode} +vardef randomwalk(expr C,wd,ht,n,l,f,r)=save A,B,a,b; + pair A,B;a=0; + draw ((wd,-ht)--(wd,ht)--(-wd,ht)--(-wd,-ht)--cycle) shifted C; + A=C; + for i=1 upto n: + forever: + b:=a*f+((uniformdeviate 2)-1)*180r; + B:=A+l*(uniformdeviate 1)*dir(b); + if (abs(xpart(B-C))>= wd) or (abs(ypart(B-C))>= ht): + B:=A+l*(uniformdeviate 2)*dir(b+180); + fi; + exitif (abs(xpart(B-C))< wd) and (abs(ypart(B-C))< ht); + endfor; + draw A--B;A:=B;a:=b mod 360; + endfor; +enddef; +beginfig(1) +randomwalk(origin, 2cm,2cm,1000,10mm,0,1); +randomwalk((5cm,0),2cm,2cm,3000, 4mm,1,0.3); +endfig; +\end{mplibcode} +\end{lrbox} +Text \fbox{\usebox\MPBox} Text +\end{document} |