%wid# := 1mm#; hei# := 1mm#; dep# := 1mm#; wid# := pt#; hei# := pt#; dep# := pt#; define_pixels(wid,hei,dep); save c_s, b, Diam; c_s = 2wid; b := wid; %%%%%%%%%%%%%%% UNPENSTROKE DEFF %%%%%%%%%%%%%%%%%%%%%%%%%%%% def unpenstroke text t = forsuffixes e = l,r: path_.e:=t; endfor if cycle path_.l: cyclestroke_ else: unfill path_.l -- reverse path_.r -- cycle fi enddef; def cyclestroke_ = begingroup interim turningcheck:=0; addto pic_ contour path_.l.t_ withweight 1; addto pic_ contour path_.r.t_ withweight _; cull pic_ dropping origin withweight default_wt_; addto_currentpicture also pic_; pic_:=nullpicture endgroup enddef; path path_.l,path_.r; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% beginchar(oct"200",12wid#,12hei#,0); "XPICTOC"; path p[]; numeric ang[]; x1 = x4 = w - x2 = c_s; x2 = x3; y1 = y2 = h/4; y3 = y4 = h - y1; p0 = z2..z4; p1 = z1..z3; z10 = z11 = z0 = point .5 of p0; x5 = x6 = x0; y5 = h - y6 = h/12; x7 = x8 = .5[x6,x3]; y7 = .5[y4,y6]; y8 = h; z9 = (x3,y6); z13 = z12 = z6; penpos6(.7b,0); penpos0(.4b,0); penpos5(b,0); ang0 = angle(z4-z2)+90; penpos4(b,ang0); penpos10(.4b,ang0); penpos2(b,ang0); ang1 = angle(z3-z1)+90; penpos3(b,ang1); penpos11(.4b,ang1); penpos1(b,ang1); penpos12(.7b,0); penpos8(.7b,-90); penpos9(.7b,180); penpos7(.7b,90); penpos13(.7b,360); pickup pencircle scaled .2pt; Diam = w++h; fill fullcircle scaled Diam shifted (z0); unpenstroke z6e..z0e..z5e; unpenstroke z4e..z10e..z2e; unpenstroke z3e..z11e..z1e; unpenstroke z12e{up}..z8e{right}..z9e{down}..z7e{left}..{up}z13e; endchar;