diff options
author | Karl Berry <karl@freefriends.org> | 2011-09-04 15:45:11 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-09-04 15:45:11 +0000 |
commit | 42e5f8462775ba16e02210c476ba8b144a08167b (patch) | |
tree | ab40d5f3add9971d605f68e2ae564d4a1c8c0855 /Master/texmf-dist/fonts/source/public/fdsymbol/fdgeometric.mf | |
parent | 49e5184aecbe98809d674d9b2db29fc54cedfbc1 (diff) |
fdsymbol (30aug11)
git-svn-id: svn://tug.org/texlive/trunk@23797 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/fdsymbol/fdgeometric.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/public/fdsymbol/fdgeometric.mf | 129 |
1 files changed, 79 insertions, 50 deletions
diff --git a/Master/texmf-dist/fonts/source/public/fdsymbol/fdgeometric.mf b/Master/texmf-dist/fonts/source/public/fdsymbol/fdgeometric.mf index c05479436f5..32ac2f122db 100644 --- a/Master/texmf-dist/fonts/source/public/fdsymbol/fdgeometric.mf +++ b/Master/texmf-dist/fonts/source/public/fdsymbol/fdgeometric.mf @@ -88,26 +88,6 @@ beginoperator(plus_size#, 1); "times"; draw_line(centre + r * dir 135, centre + r * dir 315, true); endchar; -beginoperator(plus_size#, 1.25); "plus minus"; - centre := centre + 0.125plus_size * up; - pair bt; - bt := centre + (radius + 0.25plus_size) * down; - - draw_line(centre + radius * right, centre + radius * left, true); - draw_line(centre + radius * up, centre + radius * down, true); - draw_line(bt + radius * right, bt + radius * left, true); -endchar; - -beginoperator(plus_size#, 1.25); "minus plus"; - centre := centre + 0.125plus_size * down; - pair tp; - tp := centre + (radius + 0.25plus_size) * up; - - draw_line(centre + radius * right, centre + radius * left, true); - draw_line(centre + radius * up, centre + radius * down, true); - draw_line(tp + radius * right, tp + radius * left, true); -endchar; - for angle = 0, 180: beginoperator(plus_size#, 1); "dot minus (" & decimal angle & ")"; draw_line(centre - radius * dir angle, centre + radius * dir angle, true); @@ -115,6 +95,12 @@ for angle = 0, 180: endchar; endfor; +beginoperator(plus_size#, 1); "divide"; + draw_line(centre + radius * right, centre + radius * left, true); + fill dot(centre + equal_spread * up, 3/4dot_size); + fill dot(centre + equal_spread * down, 3/4dot_size); +endchar; + for sign = 1, -1: beginoperator(plus_size#, 1); "minus with two dots"; draw_line(centre + radius * right, centre + radius * left, true); @@ -131,8 +117,58 @@ beginoperator(plus_size#, 1); "minus with four dots"; fill dot(centre + (radius - 3/4dot_size) * right + equal_spread * down, 3/4dot_size); endchar; -beginoperator(plus_size#, 1); "divide"; +for angle = 0, 180: + beginoperator(plus_size#, 1.25); "plus minus (" & decimal angle & ")"; + centre := centre + 0.125plus_size * dir (angle + 90); + pair bt; + bt := centre + (radius + 0.25plus_size) * dir (angle - 90); + + draw_line(centre + radius * right, centre + radius * left, true); + draw_line(centre + radius * up, centre + radius * down, true); + draw_line(bt + radius * right, bt + radius * left, true); + endchar; +endfor; + +for angle = 0, 180: + beginoperator(plus_size#, 1.25); "dot plus (" & decimal angle & ")"; + centre := centre + 0.125plus_size * dir (angle - 90); + pair tp; + tp := centre + (radius + 0.25plus_size) * dir (angle + 90); + + draw_line(centre + radius * right, centre + radius * left, true); + draw_line(centre + radius * up, centre + radius * down, true); + fill dot(tp, 3/4dot_size); + endchar; +endfor; + +beginoperator(plus_size#, 1.25); "dot times"; + centre := centre + 0.125plus_size * down; + pair tp; + tp := centre + (radius + 0.2plus_size) * up; + r := 4/3radius; + + draw_line(centre + r * dir 45, centre + r * dir 225, true); + draw_line(centre + r * dir 135, centre + r * dir 315, true); + fill dot(tp, 3/4dot_size); +endchar; + +beginoperator(plus_size#, 1.25); "times bar"; + centre := centre + 0.125plus_size * up; + pair bt; + bt := centre + (radius + 0.25plus_size) * down; + r := 4/3radius; + + draw_line(centre + r * dir 45, centre + r * dir 225, true); + draw_line(centre + r * dir 135, centre + r * dir 315, true); + draw_line(bt + radius * right, bt + radius * left, true); +endchar; + +beginoperator(plus_size#, 1); "divide on times"; + r := 4/3radius; + draw_line(centre + radius * right, centre + radius * left, true); + draw_line(centre + r * dir 45, centre + r * dir 225, true); + draw_line(centre + r * dir 135, centre + r * dir 315, true); fill dot(centre + equal_spread * up, 3/4dot_size); fill dot(centre + equal_spread * down, 3/4dot_size); endchar; @@ -268,19 +304,26 @@ for sign = 1, -1: endfor; for sign = 1, -1: - beginoperator(plus_size#, 1); "curly wedge dot"; - draw_prec(a, centre + sign * plus_size/2 * up, centre - sign * plus_size/2 * up, 2radius, line_thickness, false); - fill dot(1/2[z1a.l,z0a.r] + sign * 3/4dot_size * up, 3/4dot_size); + beginoperator(plus_size#, 1.25); "bar wedge"; + centre := centre - sign * 0.125plus_size * up; + pair tp; + tp := centre + sign * (radius + 0.25plus_size) * up; + + draw_less(a, centre + sign * plus_size/2 * up, centre - sign * plus_size/2 * up, 2radius, line_thickness, false); + draw_line(tp + radius * left, tp + radius * right, true); endchar; endfor; for sign = 1, -1: - beginsymbol(13/9plus_size# + 2side_bearing#, vcentre(plus_size#)); "double curly wedge"; - 1/2[z0,z1] = (w/2, (h-d)/2); - z1 - z0 = 4/9plus_size * right; + beginoperator(plus_size#, 1.5); "double bar wedge"; + centre := centre - sign * 0.25plus_size * up; + pair tpa, tpb; + tpa := centre + sign * (radius + 0.25plus_size) * up; + tpb := centre + sign * (radius + 0.5plus_size) * up; - draw_prec(a, z0 + sign * plus_size/2 * up, z0 - sign * plus_size/2 * up, 2radius, line_thickness, false); - draw_prec(b, z1 + sign * plus_size/2 * up, z1 - sign * plus_size/2 * up, 2radius, line_thickness, false); + draw_less(a, centre + sign * plus_size/2 * up, centre - sign * plus_size/2 * up, 2radius, line_thickness, false); + draw_line(tpa + radius * left, tpa + radius * right, true); + draw_line(tpb + radius * left, tpb + radius * right, true); endchar; endfor; @@ -1018,30 +1061,16 @@ beginsymbol(equal_spread# + line_thickness# + 2side_bearing#, vcentre(med_op_siz draw_smile(b, -1, z1 - r * up, z1 + r * up, equal_spread, line_thickness, true); endchar; -beginsymbol(11/5equal_spread# + line_thickness# + 2side_bearing#, vcentre(med_op_size#)); "reversed between"; - pair centre; - centre := (w/2, (h-d)/2); - r := med_op_size/2; +beginsymbol(2equal_spread# + 2side_bearing#, x_height#, desc_depth#); "intercalate"; + z1 - z0 = z3 - z2 = (2equal_spread - line_thickness) * right; + z2 - z0 = (h + d - line_thickness) * up; - z0 = centre + 3/4equal_spread * right; - z1 = centre - 3/4equal_spread * right; + 1/2[1/2[z0,z1], 1/2[z2,z3]] = (w/2, (h-d)/2); - draw_smile(a, -1, z0 - r * up, z0 + r * up, 2/3equal_spread, line_thickness, true); - draw_smile(b, 1, z1 - r * up, z1 + r * up, 2/3equal_spread, line_thickness, true); + draw_line(z2, z3, true); + draw_line(1/2[z0,z1], 1/2[z2,z3], true); endchar; -for sign = 1, -1: - beginsymbol(order_width# + 2side_bearing#, cap_height#, 0); "top"; - z1 - z0 = z3 - z2 = (order_width - line_thickness) * right; - z2 - z0 = sign * (cap_height - line_thickness) * up; - - 1/2[1/2[z0,z1], 1/2[z2,z3]] = (w/2, (h-d)/2); - - draw_line(z2, z3, true); - draw_line(1/2[z0,z1], 1/2[z2,z3], true); - endchar; -endfor; - beginsymbol(2/3equal_spread# + line_thickness# + 2side_bearing#, vcentre(plus_size#)); "wreath"; pair centre; centre := (w/2, (h-d)/2); @@ -1330,7 +1359,7 @@ for filled = false, true: z6 = z1'r + whatever * dir (270-45); z7 = z0 + thick * dir 20; z8 = z0 + thick * dir (180-20); - p1 = z7{dir (90+35)} .. {dir 90}z2r; + p1 = z7{dir (90+35)} .. {dir 90}z2r; p2 = z3r{dir 270} .. {dir (270-35)}z8; (t1,t2) = p1 intersectiontimes p2; |