1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
if unknown gen_sigma : readfrom("gen_sigma") fi
def dims = 8.5u#,asc_height#,desc_depth# enddef;
def ital = 0 enddef;
def fit_params = 0,0 enddef;
def gen_letter=
pickup fine.nib;
pos4(hair,-180); y4=bar_height; lft x4r=hround(.75u); %left bulge
pos6(hair,-180); rt x6l=hround(w-.75u); y6=-.5stem; %bottom right
y3+.5stem=h+o; x3+.5stem=hround(rt x6l-.25u); %top right
numeric slope; slope=angle((z3-z4)xscaled 2); pos3(stem,slope+90);
pos5(stem,-90); bot y5r=0; x5=.5w; %inflection pt
pos7(vstem,-270); y6=.5[y7r,y5r]; x7-.5vstem=hround x5;
filldraw double_circ_stroke %bowl and tail
z7e{right}...z6e{up}...z5e{left}...z4e{up}...z3e{dir slope};
pos2(hair,slope+90); z2r=z3r; %where handle attaches
pos1(curve,0); lft x1l=hround(lft x4r+.25u); y1+.5curve=h+o; %end of handle
filldraw circ_stroke z1e{down}...z2e{dir slope};
enddef;
cmchar "Lowercase zeta";
beginchar("z",dims);
this_letter; penlabels(1,2,3,4,5,6,7,8); endchar;
if boolean barebones: picture savedpicture; endinput; fi
cmchar "Lowercase sigma followed by zeta";
begindoublechar(oct"032",dim_sigma);
mid_sigma; middoublechar(dims); this_letter; endchar;
picture savedpicture;
|