]> git.donarmstrong.com Git - lilypond.git/blob - mf/parmesan-rests.mf
release: 1.5.46
[lilypond.git] / mf / parmesan-rests.mf
1 % -*-Fundamental-*-
2 % parmesan-rests.mf -- implement ancient rests
3
4 % source file of LilyPond's pretty-but-neat music font
5
6 % (c) 2001--2002 Juergen Reuter <reuter@ipd.uka.de>
7
8
9 fet_begingroup("rests")
10
11
12 %%%%%%%%
13 %
14 %
15 %
16 % MENSURAL NOTATION
17 %
18 %
19 %
20
21 pen_width# = 0.3 staff_space#;
22 pen_height# = 0;
23 pen_rotation = 30;
24 slight_pen_rotation = 15;
25
26 mens_block_rest_y# = 1/1 staff_space#;
27 mens_half_block_rest_y# = 5/8 staff_space#;
28
29 define_pixels(mens_block_rest_y, mens_half_block_rest_y,
30               pen_width, pen_height);
31
32 fet_beginchar("Mensural maxima rest", "-3mensural", "mensmaximarest");
33         set_char_box(0.7pen_width#, 0.7pen_width#,
34                      mens_block_rest_y#, 2mens_block_rest_y#);
35         pickup pencircle
36                 xscaled pen_width
37                 yscaled pen_height
38                 rotated slight_pen_rotation;
39         draw (0, -mens_block_rest_y) -- (0, 2 mens_block_rest_y);
40 fet_endchar;
41
42 fet_beginchar("Mensural longa rest", "-2mensural", "menslongarest");
43         set_char_box(0.7pen_width#, 0.7pen_width#,
44                      mens_block_rest_y#, mens_block_rest_y#);
45         pickup pencircle
46                 xscaled pen_width
47                 yscaled pen_height
48                 rotated slight_pen_rotation;
49         draw (0, -mens_block_rest_y) -- (0, mens_block_rest_y);
50 fet_endchar;
51
52 fet_beginchar("Mensural breve rest", "-1mensural", "mensbreverest");
53         set_char_box(0.7pen_width#, 0.7pen_width#,
54                      0, mens_block_rest_y#);
55         pickup pencircle
56                 xscaled pen_width
57                 yscaled pen_height
58                 rotated slight_pen_rotation;
59         draw (0, 0) -- (0, mens_block_rest_y);
60 fet_endchar;
61
62 fet_beginchar("Mensural whole rest", "0mensural", "menssemibrevisrest");
63         set_char_box(0.7pen_width#, 0.7pen_width#,
64                      mens_half_block_rest_y#, 0);
65         pickup pencircle
66                 xscaled pen_width
67                 yscaled pen_height
68                 rotated slight_pen_rotation;
69         draw (0, 0) -- (0, -mens_half_block_rest_y);
70 fet_endchar;
71
72 fet_beginchar("Mensural half rest", "1mensural", "mensminimahalfrest");
73         set_char_box(0.7pen_width#, 0.7pen_width#,
74                      0, mens_half_block_rest_y#);
75         pickup pencircle
76                 xscaled pen_width
77                 yscaled pen_height
78                 rotated slight_pen_rotation;
79         draw (0, 0) -- (0, mens_half_block_rest_y);
80 fet_endchar;
81
82 mensrestsize# = .8staff_space#;
83
84 fet_beginchar("Mensural 4th rest","2mensural","menssemiminimarest")
85         set_char_box(0,mensrestsize#,0,mensrestsize#);
86         pickup pencircle
87                 xscaled pen_width
88                 yscaled pen_height
89                 rotated pen_rotation;
90         lft x1 =      0;     y1 = 0;
91         lft x2 =      0; top y2 = 5/8 h;
92         rt  x3 =  4/8 w; bot y3 = 6/8 h;
93         rt  x4 = 10/8 w; bot y4 = 4/8 h;
94         draw z1 -- z2 -- z3 -- z4;
95 fet_endchar
96
97 fet_beginchar("Mensural 8th rest","3mensural","mensfusarest")
98         set_char_box(0,mensrestsize#,0,mensrestsize#);
99         pickup pencircle
100                 xscaled pen_width
101                 yscaled pen_height
102                 rotated pen_rotation;
103         rt  x1 = 10/8 w;     y1 = 0;
104         rt  x2 = 10/8 w; top y2 = 5/8 h;
105         lft x3 =  2/8 w; bot y3 = 6/8 h;
106         lft x4 =      0; bot y4 = 4/8 h;
107         draw z1 -- z2 -- z3 -- z4;
108 fet_endchar
109
110 fet_beginchar("Mensural 16th rest","4mensural","menssemifusarest")
111         set_char_box(0,mensrestsize#,0,staff_space#);
112         pickup pencircle
113                 xscaled pen_width
114                 yscaled pen_height
115                 rotated pen_rotation;
116
117         rt  x1 = 10/8 w;     y1 = 0;
118         rt  x2 = 10/8 w; top y2 = 5.5/8 h;
119         lft x3 =  2/8 w; bot y3 = 6.5/8 h;
120         lft x4 =      0; bot y4 = 4.5/8 h;
121         rt  x5 = 10/8 w; top y5 = 2.5/8 h;
122         lft x6 =  2/8 w; bot y6 = 3.5/8 h;
123         lft x7 =      0; bot y7 = 1.5/8 h;
124         draw z1 -- z2 -- z3 -- z4;
125         draw z5 -- z6 -- z7;
126 fet_endchar
127
128 fet_endgroup ("rests")