summaryrefslogtreecommitdiff
path: root/macros/mtex/metafont/slurud16.mf
blob: f4028a8e9694a236f898d97b194a306b01b8a238 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
input musicdef
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%                                                             %
%                   BOGEN (KONKAV)                            %
%                                                             %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


def drawslurs (expr i,j) =
    save jj, factor, length, height;
    numeric jj,  absp, length, height, factor;
    factor:= 1/6;
    height := i*1/2nhh#;
    length := j*nhw#;
    if  j<4 : jj := (j*(j-1)+(i-1))*8
    else:    jj := (i-1)*8+(j mod 2)*64+floor((j-2)/2);fi;
          beginchar(jj, length, height, 0);
            clear;
            z2r = (w,h);
            z1l = origin;
            absp := abs((-h,w));
            if (factor*absp)>2nhh : factor:= 2nhh/absp fi;
            z3r = 1/2z2r+factor*(-h,w);
            penpos1(thinwidth,90);
            penpos2(thinwidth,90);
            penpos3(5/12beamht,90);
            currentpen := pencircle xscaled thinwidth yscaled beamht ;
            penstroke (z1e..z3e..z2e) rotatedaround (1/2z2r,180);
          endchar;
enddef;

%%%%%%%%%%%%%%%%%%%%%%%
% positive Steigungen %
%%%%%%%%%%%%%%%%%%%%%%%

for j= 1 upto 17:
for i= 1 upto min(2j,8):
drawslurs(i,j);
endfor;endfor;
end;