summaryrefslogtreecommitdiff
path: root/macros/mtex/metafont/vio16.mf
diff options
context:
space:
mode:
Diffstat (limited to 'macros/mtex/metafont/vio16.mf')
-rw-r--r--macros/mtex/metafont/vio16.mf195
1 files changed, 195 insertions, 0 deletions
diff --git a/macros/mtex/metafont/vio16.mf b/macros/mtex/metafont/vio16.mf
new file mode 100644
index 0000000000..8626d6c180
--- /dev/null
+++ b/macros/mtex/metafont/vio16.mf
@@ -0,0 +1,195 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% NOTENSCHLUESSEL %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%
+% VIOLINSCHLUESSEL %
+%%%%%%%%%%%%%%%%%%%%
+
+def violin(expr width, beginleft, begindown, thick, penthick) =
+x10=x3=x2=x8;
+y6l=56/15width+y12r;
+x11-x4=width;
+x5=x4+13/15width;
+x2=x4+31/45 width;
+x1=x4+7/15width;
+x4=beginleft;
+x2-x12=4/15 width;
+x9+2/5width=x6;
+x6-4/15width=x7;
+x9=x4+1/5width;
+y12r=begindown;
+y2r=y4=2y11;
+y8=y12r+4/15width;
+y2r=y12r+28/15width;
+y1=y12r+width;
+y3r=y12r+13/15width;
+y7=y12r+116/45width;
+y5=y12r+16/5width;
+y5-y10=y11;
+y9=y12r+2/15width;
+penpos1(0,180);
+penpos2(thick,90);
+penpos3(penthick+1/16thick,-90);
+penpos4(5/4thick,120);
+penpos5(5/6thick,-120);
+penpos6(5/3thick,-85);
+penpos7(1/2thick,0);
+penpos8(penthick,0);
+penpos9(5/4thick,170);
+penpos10(5/6thick,180);
+penpos11(thick,0);
+penpos12(penthick,-90);
+pickup pencircle scaled 1s;
+penstroke z1e{2left}..z2e..z11e..z3e
+..z4e{right+up}..z10e..{up}z5e..z6e;
+penstroke z6e{down+left}..{down}z7e--z8e;
+fill z8l{2down+right}..z12l..z9l
+--z9r..z12r..{up}z8r..cycle;
+pickup pencircle scaled 1s;
+fill z9l{3/2right+up}..{right+2down}z9r..cycle;
+penlabels(1,2,3,4,5,6,7,8,9,10,11,12);
+enddef;
+
+beginchar(71,3.25nhw#, 6nhh#, 2nhh#);
+clear;
+violin(15/8nhh,7/4nhh,-3/2nhh,2/5nhh,1/9nhh);
+endchar;
+
+%%%%%%%%violin-schluessel verkleinert%%%%%%%%
+beginchar(72,3.25nhw#, 6nhh#, 2nhh#);
+clear;
+violin(12/8nhh,7/4nhh,-2/2nhh,3/10nhh,1/10nhh);
+endchar;
+
+%%%%%%%%%%%%%%%%%%%%%
+% BASS--SCHLUESSEL %%
+%%%%%%%%%%%%%%%%%%%%%
+
+def bass(expr width, beginleft, begindown, thick, dotthick)=
+
+y1=begindown;
+x1l=beginleft;
+x4=x5;
+x4-x3=width;
+x1l-x3=1/10width;
+y2=3/6(y4+y5);
+y4-y5=3/9width;
+y5-y3=9/9width;
+y3=y1-17/12width;
+x4-x2=3/9width;
+x7-x3=1/5width;
+y7=1/4(3y5+y4);
+penpos1(1/2thick,10);
+penpos2(thick,180);
+penpos3(0,180);
+penpos7(1/3thick,90);
+
+pickup pencircle scaled dotthick;
+drawdot z4; drawdot z5;
+pickup pencircle scaled 1s;
+penstroke z3e{up+right}..z2e{up}..{down+left}z1e;
+fill z1l{down+left}..{right}z7l{right}..{left+up}z1r..cycle;
+penlabels(1,2,3,4,5,7);
+enddef;
+
+beginchar(73,3nhw#, 4nhh#, 0nhh#);
+clear;
+bass(9/4nhh, 49/40nhh, 58/16nhh, 1/2nhh, 2s);
+endchar;
+
+%%%%%%verkleinerter bass-schluessel%%%%%%%%%
+beginchar(74,3nhw#, 4nhh#, 0nhh#);
+clear;
+bass(7/4nhh, 60/40nhh, 56/16nhh, 1/2nhh, 1.5s);
+endchar;
+
+%%%%%%%%%%%%%%%%%%%
+% ALT--SCHLUESSEL %
+%%%%%%%%%%%%%%%%%%%
+
+def alt(expr height, beginleft, begindown, thick) =
+x1=x7;
+x2=x8;
+y1-y7=height;
+y2-y8=height;
+y7=begindown;
+x7=beginleft;
+x2=x1+1/4height;
+x6l=x8l;
+y5=y7+1/2height;
+x5=x3;
+y4=y5+1/3(y3-y5);
+x4-x7=height;
+x4-x5=1/2height;
+y3-y5=2/5height;
+y8=y7;
+y6=y7;
+x9=x3;
+y9=y7-1/2height-2/5height;
+penpos8(1/4thick,180);
+penpos2(1/4thick,180);
+penpos1(thick,180);
+penpos7(thick,180);
+penpos6(thick,0);
+penpos5(1/10thick,0);
+penpos3(1/2thick,0);
+penpos4(2/3thick,180);
+
+pickup pencircle scaled 1s;
+fill z7l--z1l--z1r--z7r--cycle;
+fill z8l--z2l--z2r--z8r--cycle;
+penstroke z5e..{left+2down}z6e;
+penstroke z5e{right+4down}..{up}z4e{up}..{left+down}z3e;
+pickup pencircle scaled 1.8s;
+drawdot z3;
+
+
+pickup pencircle scaled 1s;
+penstroke
+ (counterclockwise(z7e--z1e)reflectedabout(z7,z8));
+penstroke
+(counterclockwise(z8e--z2e)reflectedabout(z7,z8));
+penstroke
+(counterclockwise(z5e..{left+2down}z6e)reflectedabout(z7,z8));
+penstroke
+(counterclockwise (z5e{right+4down}..{up}z4e{up}..{left+down}z3e)
+reflectedabout(z7,z8));
+
+pickup pencircle scaled 1.75s;
+drawdot z9;
+penlabels(1,2,3,4,5,6,7,8);
+enddef;
+
+%%%%%%%%%%%Altschl"usseL%%%%%%%%%%%
+beginchar(75,3.5nhw#, 4nhh#, 0nhh#);
+clear;
+alt(2nhh,1.25nhh,2nhh,2/5nhh);
+endchar;
+
+%%%%%%%%%Tenorschluessel%%%%%%%%%
+beginchar(76,3.5nhw#, 4nhh#, 0nhh#);
+clear;
+alt(2nhh,1.25nhh,3nhh,2/5nhh);
+endchar;
+
+%%%%%%%%%Baritonschluessel%%%%%%%%%
+beginchar(77,3.5nhw#, 4nhh#, 0nhh#);
+clear;
+alt(2nhh,1.25nhh,4nhh,2/5nhh);
+endchar;
+
+%%%%%%%%%Mezzosopranschluessel%%%%%%%%%
+beginchar(78,3.5nhw#, 4nhh#, 0nhh#);
+clear;
+alt(2nhh,1.25nhh,1nhh,2/5nhh);
+endchar;
+
+%%%%%%%%%Sopranschluessel%%%%%%%%%
+beginchar(79,3.5nhw#, 4nhh#, 0nhh#);
+clear;
+alt(2nhh,1.25nhh,0nhh,2/5nhh);
+endchar;
+