-% urg
-fet_beginchar("Numeral comma", ",", "comma")
- set_char_box(0, dot_diam#, 3/2dot_diam#, dot_diam#);
- pickup pencircle scaled dot_diam;
- draw (dot_diam/2,dot_diam/2);
- z0=(w/3,0);
- alpha=65;
- penpos1(thin,alpha+90);
- z1l=(w/2,-1.5h+hair);
- z2=(w,h/2);
- pickup pencircle;
- filldraw z1l{dir(alpha)}..{up}z2..{z0-z2}z0{right}..{dir(180+alpha)}z1r..cycle;
- labels(0,1,2);
- penlabels(1);
+fet_beginchar ("Plus", "plus");
+ set_char_box (0, .5 height#, -0.25 height#, 0.75 height#);
+
+ save hthick, vthick, size, outer_hsize, outer_vsize;
+
+ hthick# = vthick# = 2 linethickness#;
+ size# = 1.1 staff_space#;
+ define_whole_blacker_pixels (vthick);
+ define_whole_vertical_blacker_pixels (hthick);
+
+ outer_hsize = hround ((b + w - vthick) / 2);
+ outer_vsize = vround ((h + d - hthick) / 2);
+
+ centerx := hround (w / 2);
+ centery := vround ((h - d) / 2);
+
+ z1 = (centerx - hthick / 2, -d);
+ z2 = (centerx + hthick / 2, h);
+
+ labels (1, 2);
+
+ draw_rounded_block (z1, z2, hthick);
+ draw_rounded_block ((0, centery - vthick / 2),
+ (w, (centery + vthick / 2)),
+ vthick);
+fet_endchar;
+
+
+code := 43; % , = 44
+
+fet_beginchar ("Numeral comma", "comma");
+ save pat, pos;
+ path pat;
+
+ set_char_box (0, dot_diam#, 3/2 dot_diam#, dot_diam#);
+
+ pat := (dot_diam / 2, 0)
+ .. (dot_diam, dot_diam / 2)
+ .. (dot_diam / 2, dot_diam)
+ .. (0, dot_diam / 2)
+ .. cycle;
+
+ pos = ypart (((w / 3, 0) -- (w / 3, dot_diam / 2))
+ intersectiontimes pat);
+ z0 = point pos of pat;
+
+ alpha = 65;
+ penpos1 (thin, alpha + 90);
+
+ z1l = (w / 2, -1.5 h + hair);
+ z2 = (w, h / 2);
+
+ pickup feta_fillpen;
+
+ % include z0 to assist removal of overlaps
+ fill subpath (0,3) of pat
+ .. z0
+ .. cycle;
+ filldraw z1l{dir (alpha)}
+ .. {up}z2
+ -- z0{direction pos of pat}
+ ..tension 0.95.. {dir (180 + alpha)}z1r
+ .. cycle;
+
+ labels (0, 2);
+ penlabels (1);