diff options
author | Norbert Preining <norbert@preining.info> | 2024-01-31 03:01:01 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-01-31 03:01:01 +0000 |
commit | 79e1bbc1ad6b308aa2074540b2afd43b6a72ce03 (patch) | |
tree | 32074e03eec88cf72e5973ddff176a0534c77dff /obsolete/macros/mtex/metafont/noten16.mf | |
parent | 084f5d8435744b7ea7ef487ec111a7bfd100ed62 (diff) |
CTAN sync 202401310301
Diffstat (limited to 'obsolete/macros/mtex/metafont/noten16.mf')
-rw-r--r-- | obsolete/macros/mtex/metafont/noten16.mf | 292 |
1 files changed, 292 insertions, 0 deletions
diff --git a/obsolete/macros/mtex/metafont/noten16.mf b/obsolete/macros/mtex/metafont/noten16.mf new file mode 100644 index 0000000000..6aff8ab739 --- /dev/null +++ b/obsolete/macros/mtex/metafont/noten16.mf @@ -0,0 +1,292 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% % +% NOTENKOEPFE UND FAEHNCHEN % +% % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% +% +% +%%%%%%%%%%%%%%% +%%notenkoepfe % +%%%%%%%%%%%%%%% +% +% +% +% +def drawnoteb(expr noteheadwidth, theta_a, theta_b, theta_c, +width_a, width_b) = + % .l + penpos1(width_a, theta_a); % .2 + % .r + penpos3(width_a, 180+theta_a); %.l.1.r .r.3.l + % .r + penpos2(width_b, 180+theta_b); % .4 + % .l + penpos4(width_b, theta_b); % + y1 = y3 = 0; + x2 = x4 = 1/2noteheadwidth; + x1l= 0; x3l = w; y2l = h; y4l = -h; + penstroke (z1e{up}..z2e{right}..z3e{down}..z4e{left}..cycle) + rotatedaround((origin +1/2w*right),theta_c); + enddef; +% +% +%%%%%%%%%%%%%%% +%% flags % +%%%%%%%%%%%%%%% +% +% +% +pickup pencircle scaled (0.1pt); +def penstrike text t = + forsuffixes e = l,r: path_.e:=t; endfor + if cycle path_.l: cyclestroke_ + else: filldraw path_.l -- reverse path_.r -- cycle fi enddef; +def flagshape (suffix i) (expr width, height, thicka, thin, shift) = + pair intersectionp; % + thick := 1/3 height; + sh[-3] = origin; + sh[i] = shift; % .1 + penpos[i](thick,90); % + penpos[i+1]( 3thin ,90); % .2 + penpos[i+2](thin,0); % + penpos[i+3](thin,0); % .3 + x[i] = -1/16mm; % + y[i]r = height; % .4 + x[i+1] = 3/8width; % + y[i+1] = height - thick; % + y[i+3] = 0; + x[i+2]r = x[i+3]+2s= width; + y[i+2]r = height - 2thick; + if i>1: intersectionp = z[i-2]; + else : intersectionp = z[i+3]; + fi; + penstrike (z[i]e{dir(angle(z[i+1]e-z[i]e)-15)} + ..z[i+1]e{z[i+1]e-z[i]e} + ..z[i+2]e{down}..intersectionp shifted (sh[i-4]-sh[i])) + shifted sh[i]; + for n=0 upto 3: + k:=i+n; + penlabels(k);endfor; + enddef; + +%def flagshaper (suffix i) (expr width, height, thicka, thin, shift) = +% pair intersectionp; % +% thick := 1/3 height; +% sh[-3] := origin+shift; +% sh[i] = shift; % .1 +% penpos[i](thick,90); % +% penpos[i+1]( 3thin ,90); % .2 +% penpos[i+2](thin,0); % +% penpos[i+3](thin,0); % .3 +% x[i] = 0; % +% y[i]r = height; % .4 +% x[i+1] = 3/8width; % +% y[i+1] = height - thick; % +% y[i+3] = 0; +% x[i+2]r = x[i+3]+2s= width; +% y[i+2]r = height - 2thick; +% if i>1: intersectionp = z[i-2]; +% else : intersectionp = z[i+3]; +% fi; +% penstroke (counterclockwise +% (z[i]e{dir(angle(z[i+1]e-z[i]e)-15)} +% ..z[i+1]e{z[i+1]e-z[i]e} +% ..z[i+2]e{down}..intersectionp shifted (-sh[i-4]+sh[i])) +% reflectedabout (z1r scaled 0.5, +% z1r scaled 0.5+right) ) +% shifted sh[i]; +% for n=0 upto 3: +% k:=i+n; +% penlabels(k);endfor; +% enddef; + +def flagshaper (suffix i) (expr width, height, thicka, thin, shift) = + pair intersectionp; % + thick := 1/3 height; + sh[-3] := origin+shift; + sh[i] = shift; % .1 + penpos[i](thick,90); % + penpos[i+1]( 3thin ,90); % .2 + penpos[i+2](thin,0); % + penpos[i+3](thin,0); % .3 + x[i] = 0; % + y[i]r = height; % .4 + x[i+1] = 3/8width; % + y[i+1] = height - thick; % + y[i+3] = 0; + x[i+2]r = x[i+3]+2s= width; + y[i+2]r = height - 2thick; + if i>1: intersectionp = z[i-2]; + else : intersectionp = z[i+3]; + fi; + penstrike (counterclockwise + (z[i]e{dir(angle(z[i+1]e-z[i]e)-15)} + ..z[i+1]e{z[i+1]e-z[i]e} + ..z[i+2]e{down}..intersectionp shifted (-sh[i-4]+sh[i])) + reflectedabout (z1r scaled 0.5, + z1r scaled 0.5+right) ) + shifted sh[i]; + enddef; + + +%%%%%%%%%%%%%%% +%% volle Note % +%%%%%%%%%%%%%%% + +beginchar(33, nhw#, .5nhh#, .5nhh#); + w:=w+2thinwidth; + drawnoteb(w, 0, 90, 20, w/2, nhh/2); +endchar; + +%%%%%%%%%%%%%%% +%% halbe Note % +%%%%%%%%%%%%%%% + +beginchar(34, nhw#, .5nhh#, .5nhh#); + w:=w+2thinwidth; + drawnoteb(w, 0, 90, 20, 3*thinwidth, nhh/4); +endchar; + +%%%%%%%%%%%%%%% +%% ganze Note % +%%%%%%%%%%%%%%% + +beginchar (35,1.5nhh#, .5nhh#, .5nhh#); + drawnoteb(w, 0, 85, 0, nhh/3, 3*thinwidth); +endchar; + +%%%%%%%%%%%%%%%%%%%%%%% +%% "8flag nach unten" % +%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(40, 0, 3nhh#, 0); + clear; + w:=nhw; + flagshape (1,w, h, nhh, 5thinwidth, origin); + w:=0; +endchar; + +%%%%%%%%%%%%%%%%%%%%%%%% +%% "16flag nach unten" % +%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(41, 0, 3.25nhh#, 0); + clear; + w:=nhw; + flagshape (1, w, 2.5nhh, 2/3nhh, 5thinwidth, origin); + flagshape (5,.95 w, 2.25 nhh, 2/3nhh, 5thinwidth, (0,nhh)); + w:=0; +endchar; + +%%%%%%%%%%%%%%%%%%%%%%%% +%% "32flag nach unten" % +%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(42, 0, 3.75 nhh#, 0); + clear; + w:=nhw; + flagshape (1, w, 2.5nhh, 2/3nhh, 5thinwidth, origin); + flagshape (5, .95w, 2.25 nhh, 2/3nhh, 5thinwidth, (0,nhh)); + flagshape (9, .9w, 2 nhh, 2/3nhh, 5thinwidth, (0,1.75nhh)); + w:=0; +endchar; + +%%%%%%%%%%%%%%%%%%%%%%%% +%% "64flag nach unten" % +%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(43, 0, 4.25nhh#, 0); + clear; + w:=nhw; + flagshape (1, w, 2.5nhh, 2/3nhh, 5thinwidth, origin); + flagshape (5,.95 w, 2.25 nhh, 2/3nhh, 5thinwidth, (0,nhh)); + flagshape (9,.9w, 2 nhh, 2/3nhh, 5thinwidth, (0,1.75nhh)); + flagshape(13,0.85w, 2nhh, 2/3nhh, 5thinwidth, (0,2.25nhh)); + w:=0; +endchar; + +%%%%%%%%%%%%%%%%%%%%%%%%% +%% "128flag nach unten" % +%%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(44, 0, 4.5nhh#, 0); + clear; + w:=nhw; + flagshape (1, w, 2.5nhh, 2/3nhh, 5thinwidth, origin); + flagshape (5, w, 2.25nhh, 2/3nhh, 5thinwidth, (0,nhh)); + flagshape (9, w, 2 nhh, 2/3nhh, 5thinwidth, (0,1.75nhh)); + flagshape(13,0.9 w, 2nhh, 2/3nhh, 5thinwidth, (0,2.25nhh)); + flagshape(17,0.9 w, 1.5nhh, 1/3nhh, 5thinwidth, (0,3nhh)); + w:=0; +endchar; + +%%%%%%%%%%%%%%%%%%%%%% +%% "8flag nach oben" % +%%%%%%%%%%%%%%%%%%%%%% + +beginchar(45, 0, 3nhh#, 0); + clear; + w:=nhw; + flagshaper(1,w, h, nhh, 5thinwidth, origin); + penlabels(1,2,3,4); + w:=0; +endchar; + +%%%%%%%%%%%%%%%%%%%%%%% +%% "16flag nach oben" % +%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(46, 0, 3.25nhh#, 0); + clear; + w:=nhw; + flagshaper(1, w, 2.5nhh, 2/3nhh, 5thinwidth, (0,0.75nhh)); + flagshaper(5, w, 2.25 nhh, 2/3nhh, 5thinwidth,(0,-0.25nhh)); + penlabels(1,2,3,4,5,6,7,8); + w:=0; +endchar; + +%%%%%%%%%%%%%%%%%%%%%%% +%% "32flag nach oben" % +%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(47, 0, 3.75 nhh#, 0); + clear; + w:=nhw; + flagshaper(1, w, 2.5nhh, 2/3nhh, 5thinwidth, (0,1.5nhh)); + flagshaper(5, w, 2.5nhh, 2/3nhh, 5thinwidth, (0,0.75nhh)); + flagshaper(9, .95w, 2.25 nhh, 2/3nhh, 5thinwidth, origin); + penlabels(1,2,3,4,5,6,7,8,9,10,11,12); + w := 0; +endchar; + +%%%%%%%%%%%%%%%%%%%%%%% +%% "64flag nach oben" % +%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(48, 0, 4.25nhh#, 0); + clear; + w:=nhw; + flagshaper(1, w, 2.5nhh, 2/3nhh, 5thinwidth, (0,1.75nhh)); + flagshaper(5, w, 2.25 nhh, 2/3nhh, 5thinwidth, (0,1nhh)); + flagshaper(9,w, 2 nhh, 2/3nhh, 5thinwidth, (0,0.34nhh)); + flagshaper(13,0.9w, 2nhh, 2/3nhh, 5thinwidth, (0,-0.32nhh)); + penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); + w := 0; +endchar; + +%%%%%%%%%%%%%%%%%%%%%%%% +%% "128flag nach oben" % +%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar(49, 0, 4.5nhh#, 0); + clear; + w:=nhw; + flagshaper (1, w, 2.25nhh, 2/3nhh, 5thinwidth, (0,2.5nhh)); + flagshaper (5, w, 2.25nhh, 2/3nhh, 5thinwidth, (0,1.75nhh)); + flagshaper (9, w, 2 nhh, 2/3nhh, 5thinwidth, (0,1nhh)); + flagshaper(13,0.9 w, 2nhh, 2/3nhh, 5thinwidth, (0,0.5nhh)); + flagshaper(17,0.9 w, 2nhh, 1/3nhh, 5thinwidth, (0,0nhh)); + w := 0; +endchar; |