summaryrefslogtreecommitdiff
path: root/macros/mtex/metafont/beam16.mf
diff options
context:
space:
mode:
Diffstat (limited to 'macros/mtex/metafont/beam16.mf')
-rw-r--r--macros/mtex/metafont/beam16.mf79
1 files changed, 79 insertions, 0 deletions
diff --git a/macros/mtex/metafont/beam16.mf b/macros/mtex/metafont/beam16.mf
new file mode 100644
index 0000000000..03239d1784
--- /dev/null
+++ b/macros/mtex/metafont/beam16.mf
@@ -0,0 +1,79 @@
+input musicdef
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% BALKEN %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+font_x_height beamht#;
+
+def drawbeams (expr st, jj) =
+ save i, length, height;
+ numeric i, length, height;
+ length:= 0.5;
+ for i=0 upto 7:
+ height := length*st + beamht#;
+ beginchar(jj*8+i, length, height, 0);
+ clear;
+ % x2 = w; x1 = 0;
+ z2r = (w,h);
+ z1l = origin;
+ penpos1(beamht,90);
+ penpos2(beamht,90);
+ penstroke z1e---z2e;
+ endchar;
+ length := 2*length;
+ endfor;
+enddef;
+
+def drawbeamsneg (expr st, jj) =
+ save i, length, depth;
+ numeric i, length, depth;
+ length:= 0.5;
+ for i=0 upto 7:
+ depth := length*st - beamht#;
+ beginchar(jj*8+i, length, 0, depth);
+ clear;
+ z2l = (w,d);
+ z1r = origin;
+ penpos1(beamht,90);
+ penpos2(beamht,90);
+ penstroke z1e---z2e;
+ endchar;
+ length := 2*length;
+ endfor;
+enddef;
+
+numeric ss[];
+
+ss[0]:=0.05;
+ss[1]:=0.10;
+ss[2]:=0.15;
+ss[3]:=0.20;
+ss[4]:=0.25;
+ss[5]:=0.30;
+ss[6]:=0.35;
+ss[7]:=0.45;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Balken mit positiver Steigung %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+for j=0 upto 7 :
+drawbeams(ss[j],j);
+endfor;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Balken mit negativer Steigung %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+for j=0 upto 7 :
+drawbeamsneg(-ss[j],j+8);
+endfor;
+
+end;
+