- xscaled 0.15 head_width
- yscaled 0.30 head_width
- rotated -30;
-
- % pencircle width correction
- save zc, zd; pair zc, zd;
- zc = (+0.150 head_width * sind(30), +0.150 head_width * cosd(30));
- zd = (+0.075 head_width * sind(30), -0.075 head_width * cosd(30));
+ xscaled (min(blot_diameter, pen_w * head_width))
+ yscaled (min(blot_diameter, pen_h * head_width))
+ rotated -angle;
+
+ %% FIXME: replace "xpart (top z2)" (and, analogously,
+ %% "ypart (rt z3)") with an expression that really delivers the
+ %% x coordinate of the uppermost pixel that is drawn with respect
+ %% to the pencircle (this requires some elliptical computations).
+ %% MF obviously interprets "xpart (top z2)" as "top (xpart z2)",
+ %% i.e. "top x2", which is not what we want.
+
+ xpart (top z2) = ypart (rt z3) = 0;
+ top y2 = head_height/2;
+ rt x3 = head_width/2;
+ z2 = - z4;
+ z3 = - z1;