From a85032ab7df9e956752da40be6ca9821c06631e8 Mon Sep 17 00:00:00 2001
From: wl <wl>
Date: Mon, 14 Mar 2005 17:19:56 +0000
Subject: [PATCH] * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
 top of the glyph with smooth curve.

---
 ChangeLog         |  8 +++++-
 mf/feta-klef.mf   | 70 ++++++++++++++++++++++-------------------------
 mf/feta-macros.mf |  1 +
 3 files changed, 41 insertions(+), 38 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index dd4106d6eb..5a0468c021 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,12 @@
+2005-03-14  Werner Lemberg  <wl@gnu.org>
+
+	* mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
+	top of the glyph with smooth curve.
+
 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
 
-	* Documentation/user/global.itely (Page layout): remove printpagenumber.
+	* Documentation/user/global.itely (Page layout): remove
+	printpagenumber.
 
 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
 
diff --git a/mf/feta-klef.mf b/mf/feta-klef.mf
index e8c573a314..c9e56a8c92 100644
--- a/mf/feta-klef.mf
+++ b/mf/feta-klef.mf
@@ -134,9 +134,8 @@ begingroup;
 	clearxy;
 
 	center = outer_tangent_point
-		 + big_radius * dir (0)
+		 + big_radius * dir (0);
 %		 + (big_radius - bulb_radius) * dir (-turning_dir * 90)
- 		;
 
 	z1' = center + bulb_radius * dir (turning_dir * 180);
 	z2' = outer_tangent_point + flare * dir (0);
@@ -148,23 +147,22 @@ begingroup;
 
 	before := z3'{dir (turning_dir * 90)}
 		  .. z4'{-dir(0)}
-		  .. tension 1.1
-                  .. z1'{-dir (turning_dir* 90)};
+		  ..tension 1.1.. z1'{-dir (turning_dir* 90)};
 	after := z2'{dir (turning_dir * 90)}
 		 .. end_point{dir (end_angle)};
 	(u, v) = before intersectiontimes after;
 
 	pat := start_point{dir (start_angle)}
 	       .. outer_tangent_point{dir (-turning_dir * 90)}
-	       .. tension 1.02
-	       .. z5'{dir(0)}
-               .. subpath (0, u) of before
+	       ..tension 1.02.. z5'{dir(0)}
+	       .. subpath (0, u) of before
 	       .. subpath (v, infinity) of after;
 
 	if direction = 0:
 		pat := reverse pat;
 	fi
-	pat
+
+pat
 endgroup
 enddef;
 
@@ -370,30 +368,45 @@ def draw_gclef (expr reduction) =
 	z10r - z10l = .7 thinnib * dir (downstroke_angle + 90)
 		      + whatever * downstroke_dir;
 	z10 = .5 [z10l, z10r];
-
 	z11 = center + whatever * downstroke_dir + (-0.05 reduced_ss, 0);
-	penpos11 (thinnib, start_angle + 90);
 
+	penpos11 (thinnib, start_angle + 90);
  	penpos12 (thinnib, bot_angle + 90);
 	penpos13 (thinnib + 0.14 staff_space, 180);
 
 	% this auxiliary point ensures good contour overlapping
 	z8 = .5 [z9l, z9r] + .25 ((z9r - z9l) rotated -90);
 
-
 	z20 = z9l - (0, .25 blot_diameter);
-	penpos20(blot_diameter, 0);
+	penpos20 (blot_diameter, 0);
 	
-	fill
-             z2l{right}
+	pat := z10{down}
+	       .. z6
+	       ..tension 1.1.. z11{dir (start_angle)};
+
+	penpos6 (thinnib, angle (direction 1 of pat) + 90);
+
+	% two auxiliary points to simulate `draw' with `penstroke'
+	z10' = point 0.5 of pat;
+	penpos10' (thinnib, angle (direction 0.5 of pat) + 90);
+
+	z11' = point 1.5 of pat;
+	penpos11' (thinnib, angle (direction 1.5 of pat) + 90);
+
+	z21l = z20l;
+	z21r = z9r;
+
+	pat := z21l
+	       .. z10l{down}
+	       .. z10'l;
+
+	fill z2l{right}
 	     .. z3l
 	     .. z4l{left}
-             .. tension 1.07  % inside curve 
-	     .. z5l{up}
+	     ..tension 1.07.. z5l{up}  % inside curve
 	     .. z7l{up}
-	     .. tension 1.2
-	     .. z20r
-	     & simple_serif (z20r,z20l, 60)
+	     ..tension 1.2.. z20r{curl 1}
+	     .. {direction 0 of pat}z20l
 	     -- z8
 	     -- z9r			% {dir (downstroke_angle + 0)}
 	     ..tension 0.8.. z7r{down}
@@ -406,23 +419,6 @@ def draw_gclef (expr reduction) =
 	     -- z1l
 	     ..tension 0.85.. cycle;
 
-	pat := z10{down}
-	       .. z6
-	       .. tension 1.1
-	       .. z11{dir (start_angle)};
-
-	penpos6 (thinnib, angle (direction 1 of pat) + 90);
-
-	% two auxiliary points to simulate `draw' with `penstroke'
-	z10' = point 0.5 of pat;
-	penpos10' (thinnib, angle (direction 0.5 of pat) + 90);
-
-	z11' = point 1.5 of pat;
-	penpos11' (thinnib, angle (direction 1.5 of pat) + 90);
-
-	z21l = z20l;
-	z21r = z9r;
- 
 	penstroke z21e
 		  .. z10e{down}
 		  .. z10'e
@@ -436,7 +432,7 @@ def draw_gclef (expr reduction) =
 		       thinnib + .05 staff_space, 1, -1)
 	     -- cycle;
 
-	penlabels (range 1 thru 20);
+	penlabels (range 1 thru 21);
 	penlabels (10', 11');
 
 	draw_staff (-1, 3, 0);
diff --git a/mf/feta-macros.mf b/mf/feta-macros.mf
index ee12a7215e..fa236fd01a 100644
--- a/mf/feta-macros.mf
+++ b/mf/feta-macros.mf
@@ -199,6 +199,7 @@ enddef;
 % Make a round path segment going from P to Q.  2*A is the angle that the
 % path should take.
 %
+
 def simple_serif (expr p, q, a) =
 	p{dir (angle (q - p) - a)}
 	.. q{-dir (angle (p - q) + a)}
-- 
2.39.5