]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.1.26
authorfred <fred>
Sun, 24 Mar 2002 20:01:08 +0000 (20:01 +0000)
committerfred <fred>
Sun, 24 Mar 2002 20:01:08 +0000 (20:01 +0000)
mf/feta-klef.mf [new file with mode: 0644]
mf/feta-schrift.mf

diff --git a/mf/feta-klef.mf b/mf/feta-klef.mf
new file mode 100644 (file)
index 0000000..92935b4
--- /dev/null
@@ -0,0 +1,68 @@
+
+fet_begingroup("klef");
+
+def draw_bass_clef(expr reduction, center) = 
+       save thinness, left_shoot, reduced_il;
+       save left_fat, right_fat, dot_size, dot_sep;
+       save hip_factor;
+
+       left_shoot = 0.3;
+       left_fat = .3;
+       right_fat = .5;
+       dot_size = .4;
+       dot_sep = 1.2;
+       hip_factor = 0.95;
+       thinness = stafflinethickness;
+       
+
+       reduced_il# = interline# * reduction;
+       define_pixels(reduced_il);
+       set_char_box(left_fat * reduced_il#, 
+               (1 + hip_factor + right_fat/2)* reduced_il# +
+               (dot_sep+ 1) * dot_size *reduced_il#
+               , 2.5 reduced_il#, 1.0 reduced_il#)
+
+       z2 - z1 = (1.1 reduced_il, reduced_il);
+       z3 = (x2 + hip_factor* reduced_il, y1);
+       z4 - z1 = (- left_shoot * reduced_il, -2.5 reduced_il);
+
+       z1extreme = z1l - ( thinness/2, 0);
+       penpos1(left_fat* reduced_il , 0);
+       z1r = (center, 0);
+       z5 = (x3l +  dot_sep * dot_size * interline, .5 interline);
+       
+       %
+       % [Wanske] says that the extreme x point should be exactly between 
+       % the dots, but her picture shows that the extreme is ~ 0.2 ss lower
+       % hence 170 (and not 180).  (.2 is  a big amount, but because of 
+       % the near vertical shape, it is not very clear.
+       %
+       penpos3(right_fat * reduced_il, 180);
+
+       penlabels(1,3);
+       labels(2,4);
+
+
+       pickup pencircle scaled thinness;
+       filldraw z1r{up} .. z2{right} .. z3r{down}  .. {curl 0} z4 {curl 0}
+               .. z3l{up} .. z2{left} .. z1l{down} -- cycle;
+
+       draw_bulb(1, z1r, z1extreme, 1.2 , 1.2);
+
+       pickup pencircle scaled (dot_size * interline);
+       draw z5;
+       draw z5 yscaled -1;
+
+enddef;
+
+
+fet_beginchar("F clef", "bass", "ughbassclef")
+       draw_bass_clef(1.0, .5 interline); % .5 -> silly hack to accomodate 
+       % motex 
+fet_endchar;
+
+fet_beginchar("reduced F clef", "bass_change", "ughcbassclef")
+       draw_bass_clef(.8, .5 interline);
+fet_endchar;
+
+fet_endgroup("klef");
index d6127a7678a3106909389b44d315a4be81e9bc34..16987fa6814a57004d28308363a752898930c59f 100644 (file)
@@ -175,6 +175,10 @@ fet_beginchar("marcato down", "dmarcato", "dmarcato")
        xy_mirror_char;
 fet_endchar;
  
+%
+% used in french horn music todo
+%
+% TODO: too light at 20pt
 fet_beginchar("open (unstopped)", "open", "ouvert")
        save thin, height, width, thick;
        height# = 5/4 width#;
@@ -258,8 +262,8 @@ fet_beginchar("Downbow", "downbow", "downbow")
        x4 = x3;
        save p;
        path p;
-       p := z1 -- z2 -- z3 -- z4 --cycle;
-       draw_rounded_path(p, blot_diameter);
+       filldraw z1 -- z2 -- z3 -- z4 --cycle;
+
        pickup pencircle scaled stemthick;
 
        bot y5 =0;
@@ -328,24 +332,6 @@ fet_beginchar("Turn","turn","turn")
 fet_endchar;
 
 
-
-def draw_bulb(expr zl, zr, center_factor, radius_factor)=
-       begingroup;
-       clearxy;
-       save rad, ang;
-
-       ang = angle(zr-zl);
-       z0 = center_factor [zr, zl];
-       rad = center_factor * length(zr-zl);
-       
-       z1 = z0 + radius_factor* rad * dir(ang - 100);
-       z2 = z0 + rad * dir(ang - 270);
-       labels(0,1,2);
-       fill zr{dir (ang - 90)} .. z1 .. z2 -- cycle;
-
-       endgroup
-enddef;
 
 %
 % Inspired by a (by now) PD edition of Durand & C'ie edition of 
@@ -460,7 +446,7 @@ fet_beginchar("Trill (`tr')","trill","trill")
        fill z11r{dir 70} .. z13r{down} -- z13l{up} .. z11l{dir 250} -- cycle;
        penlabels(range 1 thru 15);
 
-       draw_bulb(z13r, z13l, bulb_size, 1.5);
+       draw_bulb(-1, z13r, z13l, bulb_size, 1.5);
 fet_endchar;
 
 fet_beginchar("organ-heel", "pedalheel", "pedalheel")