X-Git-Url: https://git.donarmstrong.com/lilypond.git?a=blobdiff_plain;f=mf%2Fparmesan-flags.mf;h=63a5ded432c57c24b6616f5e56a701fab6fcc4b4;hb=fac2e6ddfa211af496cf9274b7c91e06d79404d3;hp=bdfd5aac0910c2b0cc975be04ca04de7fcc0baab;hpb=2ef0f6a17cfe1fe8b5be70a1c53212c20f6e3f30;p=lilypond.git diff --git a/mf/parmesan-flags.mf b/mf/parmesan-flags.mf index bdfd5aac09..63a5ded432 100644 --- a/mf/parmesan-flags.mf +++ b/mf/parmesan-flags.mf @@ -8,187 +8,15 @@ fet_begingroup ("flags") +save between_staff_lines, on_staff_line, anywhere; +between_staff_lines = 0; +on_staff_line = 1; +anywhere = 2; -%%%%%%%% -% -% -% -% Mensural Notation -% -% -% - -def draw_mensural_outermost_flag_i = - define_pixels(stafflinethickness, staff_space) - - pickup pencircle - xscaled 1.00 stafflinethickness - yscaled 0.22 staff_space - rotated -35; - - save za, zb, zc, zd, ze; - pair za, zb, zc, zd, ze; - - za = (+0.00 staff_space, -0.00 staff_space); - zb = (+0.15 staff_space, -0.00 staff_space); - zc = (+0.45 staff_space, -0.35 staff_space); - zd = (+0.45 staff_space, -0.85 staff_space); - ze = (+0.00 staff_space, -2.00 staff_space); - - draw za .. zb -- zc{zc-zb} .. {ze-zd}zd -- ze; -enddef; - -def draw_mensural_outermost_flag_ii = - define_pixels(stafflinethickness, staff_space) - - pickup pencircle - xscaled 1.00 stafflinethickness - yscaled 0.22 staff_space - rotated -35; - - save za, zb, zc, zd, ze; - pair za, zb, zc, zd, ze; - - za = (+0.00 staff_space, -0.00 staff_space); - zb = (+0.15 staff_space, -0.00 staff_space); - zc = (+0.20 staff_space, -0.05 staff_space); - zd = (+0.20 staff_space, -1.15 staff_space); - ze = (+0.00 staff_space, -1.40 staff_space); - - draw za .. zb -- zc{zc-zb} .. {ze-zd}zd -- ze; -enddef; - -def draw_mensural_inner_flag(expr il_shift) = - define_pixels(stafflinethickness, staff_space) - - pickup pencircle - xscaled 1.00 stafflinethickness - yscaled 0.22 staff_space - rotated -35; +save dir_up, dir_down; +dir_up = 1; +dir_down = -1; - save zs, za, zb, zc, zd; - pair zs, za, zb, zc, zd; - - zs = (0, -il_shift * staff_space); - za = zs + (+0.00 staff_space, -0.10 staff_space); - zb = zs + (+0.33 staff_space, -0.30 staff_space); - zc = zs + (+0.33 staff_space, -0.70 staff_space); - zd = zs + (+0.00 staff_space, -0.90 staff_space); - - draw za{2,1} .. zb .. zc .. {-2,-1}zd; -enddef; - -fet_beginchar("8th Mensural Flag (up)", "mensuralu03", "menseighthflag") - set_char_box(0, 0.60 staff_space#, 2.00 staff_space#, 0) - draw_mensural_outermost_flag_i -fet_endchar; - -fet_beginchar("8th Mensural Flag (up)", "mensuralu13", "mens1eighthflag") - set_char_box(0, 0.60 staff_space#, 1.50 staff_space#, 0) - draw_mensural_outermost_flag_ii -fet_endchar; - -fet_beginchar("8th Mensural Flag (down)", "mensurald03", "mensdeighthflag") - set_char_box(0.60 staff_space#, 0, 0, 2.00 staff_space#) - draw_mensural_outermost_flag_i - currentpicture := currentpicture xscaled -1 yscaled -1; -fet_endchar; - -fet_beginchar("8th Mensural Flag (down)", "mensurald13", "mensd1eighthflag") - set_char_box(0.60 staff_space#, 0, 0, 1.50 staff_space#) - draw_mensural_outermost_flag_ii - currentpicture := currentpicture xscaled -1 yscaled -1; -fet_endchar; - -fet_beginchar("16th Mensural Flag (up)", "mensuralu04", "menssixteenthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(2.0) -fet_endchar; - -fet_beginchar("16th Mensural Flag (up)", "mensuralu14", "mens1sixteenthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.5) -fet_endchar; - -fet_beginchar("16th Mensural Flag (down)", "mensurald04", "mensdsixteenthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(2.0) - currentpicture := currentpicture xscaled -1 yscaled -1; -fet_endchar; - -fet_beginchar("16th Mensural Flag (down)", "mensurald14", "mensd1sixteenthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.5) - currentpicture := currentpicture xscaled -1 yscaled -1; -fet_endchar; - -fet_beginchar("32th Mensural Flag (up)", "mensuralu05", "mensthirtysecondflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(2.0) - draw_mensural_inner_flag(3.0) -fet_endchar; - -fet_beginchar("32th Mensural Flag (up)", "mensuralu15", "mens1thirtysecondflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.5) - draw_mensural_inner_flag(2.5) -fet_endchar; - -fet_beginchar("32th Mensural Flag (down)", "mensurald05", "mensdthirtysecondflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(2.0) - draw_mensural_inner_flag(3.0) - currentpicture := currentpicture xscaled -1 yscaled -1; -fet_endchar; - -fet_beginchar("32th Mensural Flag (down)", "mensurald15", "mensd1thirtysecondflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.5) - draw_mensural_inner_flag(2.5) - currentpicture := currentpicture xscaled -1 yscaled -1; -fet_endchar; - -fet_beginchar("64th Mensural Flag (up)", "mensuralu06", "menssixtyfourthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(1.5) - draw_mensural_inner_flag(2.5) - draw_mensural_inner_flag(3.5) -fet_endchar; - -fet_beginchar("64th Mensural Flag (up)", "mensuralu16", "mens1sixtyfourthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.17) - draw_mensural_inner_flag(2.08) - draw_mensural_inner_flag(3.00) -fet_endchar; - -fet_beginchar("64th Mensural Flag (down)", "mensurald06", "mensdsixtyfourthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(1.5) - draw_mensural_inner_flag(2.5) - draw_mensural_inner_flag(3.5) - currentpicture := currentpicture xscaled -1 yscaled -1; -fet_endchar; - -fet_beginchar("64th Mensural Flag (down)", "mensurald16", "mensd1sixtyfourthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.17) - draw_mensural_inner_flag(2.08) - draw_mensural_inner_flag(3.00) - currentpicture := currentpicture xscaled -1 yscaled -1; -fet_endchar; %%%%%%%% % @@ -199,7 +27,7 @@ fet_endchar; % % -def draw_mensural_outermost_flag_i = +def draw_mensural_outermost_flare (expr staffline_adjustment) = define_pixels(stafflinethickness, staff_space) pickup pencircle @@ -212,34 +40,25 @@ def draw_mensural_outermost_flag_i = za = (+0.00 staff_space, -0.00 staff_space); zb = (+0.15 staff_space, -0.00 staff_space); - zc = (+0.45 staff_space, -0.35 staff_space); - zd = (+0.45 staff_space, -0.85 staff_space); - ze = (+0.00 staff_space, -2.00 staff_space); - draw za .. zb -- zc{zc-zb} .. {ze-zd}zd -- ze; -enddef; - -def draw_mensural_outermost_flag_ii = - define_pixels(stafflinethickness, staff_space) - - pickup pencircle - xscaled 1.00 stafflinethickness - yscaled 0.22 staff_space - rotated -35; - - save za, zb, zc, zd, ze; - pair za, zb, zc, zd, ze; - - za = (+0.00 staff_space, -0.00 staff_space); - zb = (+0.15 staff_space, -0.00 staff_space); - zc = (+0.20 staff_space, -0.05 staff_space); - zd = (+0.20 staff_space, -1.15 staff_space); - ze = (+0.00 staff_space, -1.40 staff_space); + if staffline_adjustment = between_staff_lines: + zc = (+0.45 staff_space, -0.35 staff_space); + zd = (+0.45 staff_space, -0.85 staff_space); + ze = (+0.00 staff_space, -2.00 staff_space); + elseif staffline_adjustment = on_staff_line: + zc = (+0.20 staff_space, -0.05 staff_space); + zd = (+0.20 staff_space, -1.15 staff_space); + ze = (+0.00 staff_space, -1.40 staff_space); + else: % staffline_adjustment = anywhere + zc = (+0.33 staff_space, -0.20 staff_space); + zd = (+0.33 staff_space, -1.00 staff_space); + ze = (+0.00 staff_space, -1.70 staff_space); + fi; draw za .. zb -- zc{zc-zb} .. {ze-zd}zd -- ze; enddef; -def draw_mensural_inner_flag(expr il_shift) = +def draw_mensural_inner_flare(expr il_shift) = define_pixels(stafflinethickness, staff_space) pickup pencircle @@ -259,116 +78,152 @@ def draw_mensural_inner_flag(expr il_shift) = draw za{2,1} .. zb .. zc .. {-2,-1}zd; enddef; +def draw_mensural_flag (expr staffline_adjustment, flares, direction) = + save char_box_adjust, flare_shift; + if staffline_adjustment = between_staff_lines: + flare_shift = 0.5; + elseif staffline_adjustment = on_staff_line: + flare_shift = 0.0; + else: % staffline_adjustment = anywhere + flare_shift = 0.25; + fi; + char_box_adjust = flare_shift+0.5; + if direction = dir_up: + set_char_box(0, 0.60 staff_space#, + (1.00+char_box_adjust)*staff_space#, 0) + else: % direction = dir_down + set_char_box(0.60 staff_space#, 0, + (1.00+char_box_adjust)*staff_space#, 0) + fi; + draw_mensural_outermost_flare (staffline_adjustment) + for flare_count := 2 step 1 until 4: + if flares >= flare_count: + draw_mensural_inner_flare(flare_shift+flare_count-0.5) + fi; + endfor; + if direction = dir_down: + currentpicture := currentpicture xscaled -1 yscaled -1; + fi; +enddef; + +% 8th mensural flag, upwards, between staff lines fet_beginchar("8th Mensural Flag (up)", "mensuralu03", "menseighthflag") - set_char_box(0, 0.60 staff_space#, 2.00 staff_space#, 0) - draw_mensural_outermost_flag_i + draw_mensural_flag (between_staff_lines, 1, dir_up) fet_endchar; +% 8th mensural flag, upwards, on staff line fet_beginchar("8th Mensural Flag (up)", "mensuralu13", "mens1eighthflag") - set_char_box(0, 0.60 staff_space#, 1.50 staff_space#, 0) - draw_mensural_outermost_flag_ii + draw_mensural_flag (on_staff_line, 1, dir_up) +fet_endchar; + +% 8th mensural flag, upwards, anywhere +fet_beginchar("8th Mensural Flag (up)", "mensuralu23", "mens1eighthflag") + draw_mensural_flag (anywhere, 1, dir_up) fet_endchar; +% 8th mensural flag, downwards, between staff lines fet_beginchar("8th Mensural Flag (down)", "mensurald03", "mensdeighthflag") - set_char_box(0.60 staff_space#, 0, 0, 2.00 staff_space#) - draw_mensural_outermost_flag_i - currentpicture := currentpicture xscaled -1 yscaled -1; + draw_mensural_flag (between_staff_lines, 1, dir_down) fet_endchar; +% 8th mensural flag, downwards, on staff line fet_beginchar("8th Mensural Flag (down)", "mensurald13", "mensd1eighthflag") - set_char_box(0.60 staff_space#, 0, 0, 1.50 staff_space#) - draw_mensural_outermost_flag_ii - currentpicture := currentpicture xscaled -1 yscaled -1; + draw_mensural_flag (on_staff_line, 1, dir_down) +fet_endchar; + +% 8th mensural flag, downwards, anywhere +fet_beginchar("8th Mensural Flag (down)", "mensurald23", "mensd1eighthflag") + draw_mensural_flag (anywhere, 1, dir_down) fet_endchar; +% 16th mensural flag, upwards, between staff lines fet_beginchar("16th Mensural Flag (up)", "mensuralu04", "menssixteenthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(2.0) + draw_mensural_flag (between_staff_lines, 2, dir_up) fet_endchar; +% 16th mensural flag, upwards, on staff line fet_beginchar("16th Mensural Flag (up)", "mensuralu14", "mens1sixteenthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.5) + draw_mensural_flag (on_staff_line, 2, dir_up) fet_endchar; +% 16th mensural flag, upwards, anywhere +fet_beginchar("16th Mensural Flag (up)", "mensuralu24", "mens1sixteenthflag") + draw_mensural_flag (anywhere, 2, dir_up) +fet_endchar; + +% 16th mensural flag, downwards, between staff lines fet_beginchar("16th Mensural Flag (down)", "mensurald04", "mensdsixteenthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(2.0) - currentpicture := currentpicture xscaled -1 yscaled -1; + draw_mensural_flag (between_staff_lines, 2, dir_down) fet_endchar; +% 16th mensural flag, downwards, on staff line fet_beginchar("16th Mensural Flag (down)", "mensurald14", "mensd1sixteenthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.5) - currentpicture := currentpicture xscaled -1 yscaled -1; + draw_mensural_flag (on_staff_line, 2, dir_down) +fet_endchar; + +% 16th mensural flag, downwards, anywhere +fet_beginchar("16th Mensural Flag (down)", "mensurald24", "mensd1sixteenthflag") + draw_mensural_flag (anywhere, 2, dir_down) fet_endchar; +% 32th mensural flag, upwards, between staff lines fet_beginchar("32th Mensural Flag (up)", "mensuralu05", "mensthirtysecondflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(2.0) - draw_mensural_inner_flag(3.0) + draw_mensural_flag (between_staff_lines, 3, dir_up) fet_endchar; +% 32th mensural flag, upwards, on staff line fet_beginchar("32th Mensural Flag (up)", "mensuralu15", "mens1thirtysecondflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.5) - draw_mensural_inner_flag(2.5) + draw_mensural_flag (on_staff_line, 3, dir_up) fet_endchar; +% 32th mensural flag, upwards, anywhere +fet_beginchar("32th Mensural Flag (up)", "mensuralu25", "mens1thirtysecondflag") + draw_mensural_flag (anywhere, 3, dir_up) +fet_endchar; + +% 32th mensural flag, downwards, between staff lines fet_beginchar("32th Mensural Flag (down)", "mensurald05", "mensdthirtysecondflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(2.0) - draw_mensural_inner_flag(3.0) - currentpicture := currentpicture xscaled -1 yscaled -1; + draw_mensural_flag (between_staff_lines, 3, dir_down) fet_endchar; +% 32th mensural flag, downwards, on staff line fet_beginchar("32th Mensural Flag (down)", "mensurald15", "mensd1thirtysecondflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.5) - draw_mensural_inner_flag(2.5) - currentpicture := currentpicture xscaled -1 yscaled -1; + draw_mensural_flag (on_staff_line, 3, dir_down) +fet_endchar; + +% 32th mensural flag, downwards, anywhere +fet_beginchar("32th Mensural Flag (down)", "mensurald25", "mensd1thirtysecondflag") + draw_mensural_flag (anywhere, 3, dir_down) fet_endchar; +% 64th mensural flag, upwards, between staff lines fet_beginchar("64th Mensural Flag (up)", "mensuralu06", "menssixtyfourthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(1.5) - draw_mensural_inner_flag(2.5) - draw_mensural_inner_flag(3.5) + draw_mensural_flag (between_staff_lines, 4, dir_up) fet_endchar; +% 64th mensural flag, upwards, on staff line fet_beginchar("64th Mensural Flag (up)", "mensuralu16", "mens1sixtyfourthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.17) - draw_mensural_inner_flag(2.08) - draw_mensural_inner_flag(3.00) + draw_mensural_flag (on_staff_line, 4, dir_up) fet_endchar; +% 64th mensural flag, upwards, anywhere +fet_beginchar("64th Mensural Flag (up)", "mensuralu26", "mens1sixtyfourthflag") + draw_mensural_flag (anywhere, 4, dir_up) +fet_endchar; + +% 64th mensural flag, downwards, between staff lines fet_beginchar("64th Mensural Flag (down)", "mensurald06", "mensdsixtyfourthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_i - draw_mensural_inner_flag(1.5) - draw_mensural_inner_flag(2.5) - draw_mensural_inner_flag(3.5) - currentpicture := currentpicture xscaled -1 yscaled -1; + draw_mensural_flag (between_staff_lines, 4, dir_down) fet_endchar; +% 64th mensural flag, downwards, on staff line fet_beginchar("64th Mensural Flag (down)", "mensurald16", "mensd1sixtyfourthflag") - set_char_box(0, 0.60 staff_space#, 3.00 staff_space#, 0) - draw_mensural_outermost_flag_ii - draw_mensural_inner_flag(1.17) - draw_mensural_inner_flag(2.08) - draw_mensural_inner_flag(3.00) - currentpicture := currentpicture xscaled -1 yscaled -1; + draw_mensural_flag (on_staff_line, 4, dir_down) +fet_endchar; + +% 64th mensural flag, downwards, anywhere +fet_beginchar("64th Mensural Flag (down)", "mensurald26", "mensd1sixtyfourthflag") + draw_mensural_flag (anywhere, 4, dir_down) fet_endchar; fet_endgroup ("flags")