summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/niceframe/umrandb.mf
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/niceframe/umrandb.mf
Initial commit
Diffstat (limited to 'macros/latex/contrib/niceframe/umrandb.mf')
-rw-r--r--macros/latex/contrib/niceframe/umrandb.mf596
1 files changed, 596 insertions, 0 deletions
diff --git a/macros/latex/contrib/niceframe/umrandb.mf b/macros/latex/contrib/niceframe/umrandb.mf
new file mode 100644
index 0000000000..0adc66f360
--- /dev/null
+++ b/macros/latex/contrib/niceframe/umrandb.mf
@@ -0,0 +1,596 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% A font of the border-project %
+% This file has version number 1.2. %
+% 19.06.1993 %
+% (c) by Andreas H"orstemeier, Hemer %
+% some changes %
+% by Andreas Schrell, Wuppertal %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+input umrand
+
+def randsix(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pensquare scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw top (u,0)--bot (u,h);
+ draw top (2u,0)--bot (2u,h);
+ draw top (3u,0)--bot (3u,h);
+ draw top (4u,0)--bot (4u,h);
+ draw top (5u,0)--bot (5u,h);
+ draw top (6u,0)--bot (6u,h);
+ endchar;
+enddef;
+
+def randfour(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pensquare scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw top (u,0)--bot (u,h);
+ draw top (2u,0)--bot (2u,h);
+ draw top (3u,0)--bot (3u,h);
+ draw top (4u,0)--bot (4u,h);
+ endchar;
+enddef;
+
+def randfivea(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pensquare scaled penwid;
+ CenterRot(W); sec(6);
+ xscal:=1;
+ draw top (u,0)--bot (u,h);
+ draw top (2u,0)--bot (2u,h);
+ draw top (4u,0)--bot (4u,h);
+ draw top (5u,0)--bot (5u,h);
+ pickup pensquare scaled penwidd;
+ draw top (3u,0)--bot (3u,h);
+ endchar;
+enddef;
+
+def randfiveb(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pensquare scaled penwid;
+ CenterRot(W); sec(6);
+ xscal:=1;
+ draw top (u,0)--bot (u,2.5v);
+ draw top (2u,0)--bot (2u,2.5v);
+ draw top (4u,0)--bot (4u,2.5v);
+ draw top (5u,0)--bot (5u,2.5v);
+ draw bot (u,h)--top (u,3.5v);
+ draw bot (2u,h)--top (2u,3.5v);
+ draw bot (4u,h)--top (4u,3.5v);
+ draw bot (5u,h)--top (5u,3.5v);
+ draw (u,2.5v)--(5u,2.5v)--(5u,3.5v)--(u,3.5v)--(u,2.5v);
+ draw (1.5u,3v)--(4.5u,3v);
+ pickup pensquare scaled penwidd;
+ draw top (3u,0)--bot (3u,2.5u-penwid/2);
+ draw top (3u,3.5u+penwid/2)--bot (3u,h);
+ endchar;
+enddef;
+
+def eckesa(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(u,3v);
+ draw (u,4v)--(u,8v)--(4u,8v)--(4u,6v);
+ draw (2u,0)--(2u,3v);
+ draw (2u,4v)--(2u,7v)--(3u,7v)--(3u,6v);
+ draw (3u,0)--(3u,v);
+ draw (3u,2v)--(3u,5v);
+ draw (4u,0)--(4u,v);
+ draw (4u,2v)--(4u,5v);
+ draw (5u,0)--(5u,3v);
+ draw (5u,4v)--(5u,8v)--(8u,8v)--(8u,5v)--(6u,5v);
+ draw (6u,0)--(6u,3v);
+ draw (6u,4v)--(6u,7v)--(7u,7v)--(7u,6v)--(6u,6v);
+ draw (0,v)--(u,v);
+ draw (2u,v)--(5u,v);
+ draw (6u,v)--(8u,v)--(8u,4v)--(4u,4v);
+ draw (0,2v)--(u,2v);
+ draw (2u,2v)--(5u,2v);
+ draw (6u,2v)--(7u,2v)--(7u,3v)--(4u,3v);
+ draw (0,3v)--(3u,3v);
+ draw (0,4v)--(3u,4v);
+ draw (0,5v)--(1u,5v);
+ draw (2u,5v)--(5u,5v);
+ draw (0,6v)--(1u,6v);
+ draw (2u,6v)--(5u,6v);
+ endchar;
+enddef;
+
+def eckesb(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(u,3v);
+ draw (u,4v)--(u,6.5v)..(2.5u,8v)..(4u,6.5v)--(4u,6v);
+ draw (2u,0)--(2u,3v);
+ draw (2u,4v)--(2u,6.5v)..(2.5u,7v)..(3u,6.5v)--(3u,6v);
+ draw (3u,0)--(3u,v);
+ draw (3u,2v)--(3u,5v);
+ draw (4u,0)--(4u,v);
+ draw (4u,2v)--(4u,5v);
+ draw (5u,0)--(5u,3v);
+ draw (5u,4v)--(5u,6.5v)..(6.5u,8v)..(8u,6.5v)..(6.5u,5v)--(6u,5v);
+ draw (6u,0)--(6u,3v);
+ draw (6u,4v)--(6u,6.5v)..(6.5u,7v)..(7u,6.5v)..(6.5u,6v)--(6u,6v);
+ draw (0,v)--(u,v);
+ draw (2u,v)--(5u,v);
+ draw (6u,v)--(6.5u,v)..(8u,2.5v)..(6.5u,4v)--(4u,4v);
+ draw (0,2v)--(u,2v);
+ draw (2u,2v)--(5u,2v);
+ draw (6u,2v)--(6.5u,2v)..(7u,2.5v)..(6.5u,3v)--(4u,3v);
+ draw (0,3v)--(3u,3v);
+ draw (0,4v)--(3u,4v);
+ draw (0,5v)--(1u,5v);
+ draw (2u,5v)--(5u,5v);
+ draw (0,6v)--(1u,6v);
+ draw (2u,6v)--(5u,6v);
+ endchar;
+enddef;
+
+def eckesh(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(0,v);
+ draw (2u,0)--(0,2v);
+ draw (3u,0)--(0,3v);
+ draw (4u,0)--(0,4v);
+ draw (5u,0)--(0,5v);
+ draw (6u,0)--(0,6v);
+ endchar;
+enddef;
+
+def eckesc(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(6u,5v);
+ draw (2u,0)--(6u,4v);
+ draw (3u,0)--(6u,3v);
+ draw (4u,0)--(6u,2v);
+ draw (5u,0)--(6u,1v);
+ draw (6u,0)--(6u,5v);
+ draw (0,v)--(5u,6v);
+ draw (0,2v)--(4u,6v);
+ draw (0,3v)--(3u,6v);
+ draw (0,4v)--(2u,6v);
+ draw (0,5v)--(1u,6v);
+ draw (0,6v)--(5u,6v);
+ draw (6u,5v)..(5.7071u,5.7071v)..(5u,6v);
+ endchar;
+enddef;
+
+def eckesd(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(u,v)--(5.7071u,5.7071v);
+ draw (2u,0)--(2u,v)--(6u,5v);
+ draw (3u,0)--(3u,v)--(6u,4v);
+ draw (4u,0)--(4u,v)--(6u,3v);
+ draw (5u,0)--(5u,v)--(6u,2v);
+ draw (6u,0)--(6u,5v);
+ draw (0,v)--(u,v);
+ draw (0,2v)--(u,2v)--(5u,6v);
+ draw (0,3v)--(u,3v)--(4u,6v);
+ draw (0,4v)--(u,4v)--(3u,6v);
+ draw (0,5v)--(u,5v)--(2u,6v);
+ draw (0,6v)--(5u,6v);
+ draw (6u,5v)..(5.7071u,5.7071v)..(5u,6v);
+ endchar;
+enddef;
+
+def eckese(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(u,3v)--(0,3v);
+ draw (u,v)--(0,v);
+ draw (u,2v)--(0,2v);
+ draw (2u,0)--(2u,3v);
+ draw (3u,0)--(3u,3v);
+ draw (4u,0v)..(3.7071u,0.7071v)..(3u,1v);
+ draw (5u,0v)..(4.4142u,1.4142v)..(3u,2v);
+ draw (6u,0v)..(5.1213u,2.1213v)..(3u,3v);
+ draw (1u,3v)..(0.7071u,3.7071v)..(0u,4v);
+ draw (2u,3v)..(1.4142u,4.4142v)..(0u,5v);
+ draw (3u,3v)..(2.1213u,5.1213v)..(0u,6v);
+ endchar;
+enddef;
+
+def eckesf(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(u,v);
+ draw (2u,0)--(2u,v);
+ draw (3u,0)--(3u,2v)--(0,2v);
+ draw (3u,v)--(0,v);
+ draw (4u,0)--(4u,2v);
+ draw (u,2v)--(u,4v)--(0,4v);
+ draw (u,3v)--(0,3v);
+ draw (2u,2v)--(2u,4v);
+ draw (5u,0v)..(4.7071u,0.7071v)..(4u,1v);
+ draw (6u,0v)..(5.4142u,1.4142v)..(4u,2v);
+ draw (3u,2v)..(2.7071u,2.7071v)..(2u,3v);
+ draw (4u,2v)..(3.4142u,3.4142v)..(2u,4v);
+ draw (1u,4v)..(0.7071u,4.7071v)..(0u,5v);
+ draw (2u,4v)..(1.4142u,5.4142v)..(0u,6v);
+ endchar;
+enddef;
+
+def eckesg(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(u,5v)--(0,5v);
+ draw (2u,0)--(2u,4v)--(0,4v);
+ draw (3u,0)--(3u,3v)--(0,3v);
+ draw (4u,0)--(4u,2v)--(0,2v);
+ draw (5u,0)--(5u,v)--(0,v);
+ draw (6u,0v)..(5.7071u,0.7071v)..(5u,1v);
+ draw (5u,1v)..(4.7071u,1.7071v)..(4u,2v);
+ draw (4u,2v)..(3.7071u,2.7071v)..(3u,3v);
+ draw (3u,3v)..(2.7071u,3.7071v)..(2u,4v);
+ draw (2u,4v)..(1.7071u,4.7071v)..(1u,5v);
+ draw (1u,5v)..(0.7071u,5.7071v)..(0u,6v);
+ endchar;
+enddef;
+
+def eckesl(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (1u,0v)..(0.7071u,0.7071v)..(0u,1v);
+ draw (2u,0)--(2u,1v)..(1.7071u,1.7071v)..(1u,2v)--(0,2v);
+ draw (3u,0)--(3u,2v)..(2.7071u,2.7071v)..(2u,3v)--(0,3v);
+ draw (4u,0)--(4u,3v)..(3.7071u,3.7071v)..(3u,4v)--(0,4v);
+ draw (5u,0)--(5u,4v)..(4.7071u,4.7071v)..(4u,5v)--(0,5v);
+ draw (6u,0)--(6u,5v)..(5.7071u,5.7071v)..(5u,6v)--(0,6v);
+ endchar;
+enddef;
+
+def eckesi(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(u,.5v)--(6u,5.5v)--(5.5u,6v)--(.5u,v)--(0,v);
+ draw (2u,0)--(2u,.5v)--(6u,4.5v)--(4.5u,6v)--(.5u,2v)--(0,2v);
+ draw (3u,0)--(3u,.5v)--(6u,3.5v)--(3.5u,6v)--(.5u,3v)--(0,3v);
+ draw (4u,0)--(4u,.5v)--(6u,2.5v)--(2.5u,6v)--(.5u,4v)--(0,4v);
+ draw (5u,0)--(5u,.5v)--(6u,1.5v)--(1.5u,6v)--(.5u,5v)--(0,5v);
+ draw (6u,0)--(6u,.5v)--(.5u,6v)--(0,6v);
+ endchar;
+enddef;
+
+def eckesj(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(u,.5v)--(6u,5.5v)--(5.5u,6v)--(.5u,v)--(0,v);
+ draw (2u,0)--(2u,.5v)--(6u,4.5v)--(4.5u,6v)--(.5u,2v)--(0,2v);
+ draw (3u,0)--(3u,.5v)--(6u,3.5v)--(3.5u,6v)--(.5u,3v)--(0,3v);
+ draw (4u,0)--(4u,.5v)--(6u,2.5v)--(2.5u,6v)--(.5u,4v)--(0,4v);
+ draw (5u,0)--(5u,.5v)--(6u,1.5v)--(1.5u,6v)--(.5u,5v)--(0,5v);
+ draw (6u,0)--(6u,.5v)--(.5u,6v)--(0,6v);
+ draw (5u,.5v)--(.5u,5v);
+ draw (4u,.5v)--(.5u,4v);
+ draw (3u,.5v)--(.5u,3v);
+ draw (2u,.5v)--(.5u,2v);
+ draw (u,.5v)--(.5u,v);
+ endchar;
+enddef;
+
+def eckesk(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(5u,6v);
+ draw (2u,0)--(4u,6v);
+ draw (3u,0)--(3u,6v);
+ draw (4u,0)--(2u,6v);
+ draw (5u,0)--(1u,6v);
+ draw (6u,0)--(0,6v);
+ draw (0,v)--(6u,5v);
+ draw (0,2v)--(6u,4v);
+ draw (0,3v)--(6u,3v);
+ draw (0,4v)--(6u,2v);
+ draw (0,5v)--(6u,1v);
+ draw (0,6v)--(6u,0);
+ endchar;
+enddef;
+
+def eckesm(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (1u,0)..(0.7071u,0.7071v)..(0,1v);
+ draw (2u,0)..(1.4142u,1.4142v)..(0,2v);
+ draw (3u,0)..(2.1213u,2.1213v)..(0,3v);
+ draw (4u,0)..(2.8284u,2.8284v)..(0,4v);
+ draw (5u,0)..(3.5355u,3.5355v)..(0,5v);
+ draw (6u,0)..(4.2426u,4.2426v)..(0,6v);
+ endchar;
+enddef;
+
+def eckesn(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (1u,0)..(0.7071u,0.7071v)..(0,1v);
+ draw (2u,0)..(1.7071u,1.7071v)..(0,2v);
+ draw (3u,0)..(2.7071u,2.7071v)..(0,3v);
+ draw (4u,0)..(3.7071u,3.7071v)..(0,4v);
+ draw (5u,0)..(4.7071u,4.7071v)..(0,5v);
+ draw (6u,0)..(5.7071u,5.7071v)..(0,6v);
+ endchar;
+enddef;
+
+def eckeso(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(8);
+ xscal:=1;
+ draw (u,0)--(u,v)--(0,v);
+ draw (2u,0)--(2u,2v)--(0,2v);
+ draw (3u,0)--(3u,3v)--(0,3v);
+ draw (4u,0)--(4u,4v)--(0,4v);
+ draw (5u,0)--(5u,5v)--(0,5v);
+ draw (6u,0)--(6u,6v)--(0,6v);
+ endchar;
+enddef;
+
+def eckefb(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw (1u,0)..(0.7071u,0.7071v)..(0,1v);
+ draw (2u,0)..(1.7071u,1.7071v)..(0,2v);
+ draw (3u,0)..(2.7071u,2.7071v)..(0,3v);
+ draw (4u,0)..(3.7071u,3.7071v)..(0,4v);
+ endchar;
+enddef;
+
+def eckefa(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw (1u,0)..(0.7071u,0.7071v)..(0,1v);
+ draw (2u,0)..(1.4142u,1.4142v)..(0,2v);
+ draw (3u,0)..(2.1213u,2.1213v)..(0,3v);
+ draw (4u,0)..(2.8284u,2.8284v)..(0,4v);
+ endchar;
+enddef;
+
+def eckefc(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw (1u,0)..(0.7071u,0.7071v)..(0,1v);
+ draw (2u,0)--(2u,v)..(1.7071u,1.7071v)..(u,2v)--(0,2v);
+ draw (3u,0)--(3u,2v)..(2.7071u,2.7071v)..(2u,3v)--(0,3v);
+ draw (4u,0)--(4u,3v)..(3.7071u,3.7071v)..(3u,4v)--(0,4v);
+ endchar;
+enddef;
+
+def eckefd(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw (1u,0)--(1u,3v)..(0.7071u,3.7071v)..(0,4v);
+ draw (2u,0)--(2u,2v)..(1.7071u,2.7071v)..(u,3v)--(0,3v);
+ draw (3u,0)--(3u,1v)..(2.7071u,1.7071v)..(2u,2v)--(0,2v);
+ draw (4u,0)..(3.7071u,0.7071v)..(3u,v)--(0,v);
+ endchar;
+enddef;
+
+def eckefe(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw (u,0)--(u,v);
+ draw (2u,0)--(2u,v);
+ draw (u,2v)..(0.7071u,2.7071v)..(0,3v);
+ draw (2u,2v)..(1.4142u,3.4142v)..(0,4v);
+ draw (3u,0)..(2.7071u,0.7071v)..(2u,v)--(0,v);
+ draw (4u,0)..(3.4142u,1.4142v)..(2u,2v)--(0,2v);
+ endchar;
+enddef;
+
+def eckeff(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw (u,0)--(u,v)--(0,v);
+ draw (2u,0)--(2u,2v)--(0,2v);
+ draw (3u,0)--(3u,3v)--(0,3v);
+ draw (4u,0)--(4u,4v)--(0,4v);
+ endchar;
+enddef;
+
+def eckefg(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw (u,0)--(0,v);
+ draw (2u,0)--(0,2v);
+ draw (3u,0)--(0,3v);
+ draw (4u,0)--(0,4v);
+ endchar;
+enddef;
+
+def eckefh(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw (u,0)--(u,.5v)--(4u,3.5v)--(3.5u,4v)--(.5u,v)--(0,v);
+ draw (2u,0)--(2u,.5v)--(4u,2.5v)--(2.5u,4v)--(.5u,2v)--(0,2v);
+ draw (3u,0)--(3u,.5v)--(4u,1.5v)--(1.5u,4v)--(.5u,3v)--(0,3v);
+ draw (4u,0)--(4u,.5v)--(.5u,4v)--(0,4v);
+ endchar;
+enddef;
+
+def eckefi(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(5);
+ xscal:=1;
+ draw (u,0)--(u,.5v)--(4u,3.5v)--(3.5u,4v)--(.5u,v)--(0,v);
+ draw (2u,0)--(2u,.5v)--(4u,2.5v)--(2.5u,4v)--(.5u,2v)--(0,2v);
+ draw (3u,0)--(3u,.5v)--(4u,1.5v)--(1.5u,4v)--(.5u,3v)--(0,3v);
+ draw (4u,0)--(4u,.5v)--(.5u,4v)--(0,4v);
+ draw (3u,.5v)--(.5u,3v);
+ draw (2u,.5v)--(.5u,2v);
+ draw (u,.5v)--(.5u,v);
+ endchar;
+enddef;
+
+def eckexa(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pensquare scaled penwid;
+ CenterRot(W); sec(6);
+ xscal:=1;
+ draw (u,0)--(u,v);
+ draw (2u,0)--(2u,v);
+ draw (4u,0)--(4u,v);
+ draw (5u,0)--(5u,v);
+ draw (0,v)--(u,v);
+ draw (0,2v)--(u,2v);
+ draw (0,4v)--(u,4v);
+ draw (0,5v)--(u,5v);
+ draw (u,v)--(u,5v)--(5u,5v)--(5u,v)--(u,v);
+ draw (2u,2v)--(2u,4v)--(4u,4v)--(4u,2v)--(2u,2v);
+ draw (u,5v)--(u,6v)--(5u,6v)--(5u,5v);
+ draw (5u,v)--(6u,v)--(6u,5v)--(5u,5v);
+ draw (5.5u,1.5v)--(5.5u,4.5v);
+ draw (1.5u,5.5v)--(4.5u,5.5v);
+ pickup pensquare scaled penwidd;
+ draw (3u,0)-- bot (3u,v-penwid/2);
+ draw (0,3v)-- lft (u-penwid/2,3v);
+ drawdot (3u,3v);
+ endchar;
+enddef;
+
+def eckexb(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(6);
+ xscal:=1;
+ draw (u,0)--(u,v);
+ draw (2u,0)--(2u,v);
+ draw (4u,0)..(3.7071u,0.7071v)..(3u,v)--(0,v);
+ draw (5u,0)..(4.4142u,1.4142v)..(3u,2v)--(0,2v);
+ draw (u,2v)--(u,3v)..(.7071u,3.7071v)..(0,4v);
+ draw (2u,2v)--(2u,3v)..(1.4142u,4.4142v)..(0,5v);
+ pickup pencircle scaled penwidd;
+ draw (3u,0)--(3u,v)..(2.4142u,2.4142v)..(u,3v)--(0,3v);
+ endchar;
+enddef;
+
+def eckexc(expr W) =
+ beginchar(incr nextchar,charsize#,charsize#,0cm#);
+ pickup pencircle scaled penwid;
+ CenterRot(W); sec(6);
+ xscal:=1;
+ draw (u,0)..(.7071u,.7071v)..(0,v);
+ draw (2u,0)..(1.4142u,1.4142v)..(0,2v);
+ draw (4u,0)..(2.8284u,2.8284v)..(0,4v);
+ draw (5u,0)..(3.5355u,3.5355v)..(0,5v);
+ pickup pencircle scaled penwidd;
+ draw (3u,0)..(2.1213u,2.1213v)..(0,3v);
+ endchar;
+enddef;
+
+nextchar:=-1; % -1: we start first char width incr(-1) = 0!
+
+for k=0 upto 4-1: randsix(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesa(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesb(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesc(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesd(k*360/4); endfor;
+
+for k=0 upto 4-1: eckese(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesf(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesg(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesh(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesi(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesj(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesk(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesl(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesm(k*360/4); endfor;
+
+for k=0 upto 4-1: eckesn(k*360/4); endfor;
+
+for k=0 upto 4-1: eckeso(k*360/4); endfor;
+
+for k=0 upto 4-1: randfour(k*360/4); endfor;
+
+for k=0 upto 4-1: eckefa(k*360/4); endfor;
+
+for k=0 upto 4-1: eckefb(k*360/4); endfor;
+
+for k=0 upto 4-1: eckefc(k*360/4); endfor;
+
+for k=0 upto 4-1: eckefd(k*360/4); endfor;
+
+for k=0 upto 4-1: eckefe(k*360/4); endfor;
+
+for k=0 upto 4-1: eckeff(k*360/4); endfor;
+
+for k=0 upto 4-1: eckefg(k*360/4); endfor;
+
+for k=0 upto 4-1: eckefh(k*360/4); endfor;
+
+for k=0 upto 4-1: eckefi(k*360/4); endfor;
+
+for k=0 upto 4-1: randfivea(k*360/4); endfor;
+
+for k=0 upto 4-1: randfiveb(k*360/4); endfor;
+
+for k=0 upto 4-1: eckexa(k*360/4); endfor;
+
+for k=0 upto 4-1: eckexb(k*360/4); endfor;
+
+for k=0 upto 4-1: eckexc(k*360/4); endfor;
+
+end;
+