%PDF- %PDF-
| Direktori : /data/old/usr/share/texlive/texmf-dist/fonts/source/public/mnsymbol/ |
| Current File : //data/old/usr/share/texlive/texmf-dist/fonts/source/public/mnsymbol/Sym-Operators.mf |
for scale = 1, 1.4:
beginsquarebigop(scale, scale); "big plus";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw (centre + op_height/2 * dir 0) -- (centre + op_height/2 * dir 180);
draw (centre + op_height/2 * dir 90) -- (centre + op_height/2 * dir 270);
endchar;
endfor;
charlist current_char - 1: current_char;
for scale = 1, 1.4:
beginbigop(scale, scale); "big times";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
z1 - z0 = z3 - z2 = op_width * dir 0;
z2 - z0 = op_width * dir 90;
1/2[1/2[z0,z1], 1/2[z2,z3]] = centre;
draw z0 -- z3;
draw z1 -- z2;
endchar;
endfor;
charlist current_char - 1: current_char;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big wedge";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
z3 - z0 = z2 - z1 = op_width * dir 0;
z1 - z0 = sign * op_height * dir 90;
1/2[1/2[z0,z1], 1/2[z2,z3]] = centre;
draw z0 -- 1/2[z1, z2] -- z3;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big wedge dot";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
z3 - z0 = z2 - z1 = op_width * dir 0;
z1 - z0 = sign * op_height * dir 90;
1/2[1/2[z0,z1], 1/2[z2,z3]] = centre;
draw z0 -- 1/2[z1, z2] -- z3;
fill circle(centre - sign * 1/4op_height * dir 90, 4/3dot_size * sqrt scale);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(6/5scale, scale); "double big wedge";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
z3 - z0 = z2 - z1 = 5/6op_width * dir 0;
z1 - z0 = sign * op_height * dir 90;
1/2[1/2[z0,z1], 1/2[z2,z3]] = centre;
1/2[z0a,z0b] = z0;
1/2[z1a,z1b] = 1/2[z1, z2];
1/2[z2a,z2b] = z3;
z0b - z0a = z1b - z1a = z2b - z2a = 1/3(plus_size + 11/5rule_thickness) * dir 0;
draw z0a -- z1a -- z2a;
draw z0b -- z1b -- z2b;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big curly wedge";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw prec(centre + sign * op_height/2 * dir 90,
centre - sign * op_height/2 * dir 90,
op_width);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big curly wedge dot";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw prec(centre + sign * op_height/2 * dir 90,
centre - sign * op_height/2 * dir 90,
op_width);
fill circle(centre - sign * 3/8op_height * dir 90, 4/3dot_size * sqrt scale);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(6/5scale, scale); "double big curly wedge";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
1/2[z0,z1] = centre;
z1 - z0 = 1/3(plus_size + 11/5rule_thickness) * dir 0;
draw prec(z0 + sign * op_height/2 * dir 90,
z0 - sign * op_height/2 * dir 90,
5/6op_width);
draw prec(z1 + sign * op_height/2 * dir 90,
z1 - sign * op_height/2 * dir 90,
5/6op_width);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big union";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw subset(centre + sign * op_height/2 * dir 90,
centre - sign * op_height/2 * dir 90,
op_width);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big union dot";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw subset(centre + sign * op_height/2 * dir 90,
centre - sign * op_height/2 * dir 90,
op_width);
fill circle(centre - sign * 1/8op_height * dir 90, 4/3dot_size * sqrt scale);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big union plus";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw subset(centre + sign * op_height/2 * dir 90,
centre - sign * op_height/2 * dir 90,
op_width);
t := 2rule_thickness;
r := 3/8op_width - t;
draw (centre - sign * 1/8op_width * dir 90 + r * dir 0)
-- (centre - sign * 1/8op_width * dir 90 + r * dir 180);
draw (centre + (r - sign * 1/8op_width) * dir 90)
-- (centre + (r + sign * 1/8op_width) * dir 270);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big square union";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
z3 - z0 = z2 - z1 = op_width * dir 0;
z1 - z0 = sign * op_height * dir 90;
1/2[1/2[z0,z1], 1/2[z2,z3]] = centre;
draw z0 -- z1 -- z2 -- z3;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big square union dot";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
z3 - z0 = z2 - z1 = op_width * dir 0;
z1 - z0 = sign * op_height * dir 90;
1/2[1/2[z0,z1], 1/2[z2,z3]] = centre;
draw z0 -- z1 -- z2 -- z3;
fill circle(centre - sign * 1/8op_height * dir 90, 4/3dot_size * sqrt scale);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for sign = 1, -1:
for scale = 1, 1.4:
beginbigop(scale, scale); "big square union plus";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
z3 - z0 = z2 - z1 = op_width * dir 0;
z1 - z0 = sign * op_height * dir 90;
1/2[1/2[z0,z1], 1/2[z2,z3]] = centre;
draw z0 -- z1 -- z2 -- z3;
t := 2rule_thickness;
r := 3/8op_width - t;
draw (centre - sign * 1/8op_width * dir 90 + r * dir 0)
-- (centre - sign * 1/8op_width * dir 90 + r * dir 180);
draw (centre + (r - sign * 1/8op_width) * dir 90)
-- (centre + (r + sign * 1/8op_width) * dir 270);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for scale = 1, 1.4:
beginsquarebigop(scale, scale); "big circle";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw circle(centre, op_height/2);
endchar;
endfor;
charlist current_char - 1: current_char;
for alpha = 0, 90, 45, 135:
for scale = 1, 1.4:
beginsquarebigop(scale, scale); "big circle minus";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
r := op_height/2 - 11/10 * (4/3rule_thickness * sqrt scale);
draw circle(centre, op_height/2);
draw (centre - r * dir alpha) -- (centre + r * dir alpha);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for alpha = 0, 45:
for scale = 1, 1.4:
beginsquarebigop(scale, scale); "big circle plus";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
r := op_height/2 - 11/10 * (4/3rule_thickness * sqrt scale);
draw circle(centre, op_height/2);
draw (centre - r * dir alpha) -- (centre + r * dir alpha);
draw (centre - r * dir (alpha + 90)) -- (centre + r * dir (alpha + 90));
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for scale = 1, 1.4:
beginsquarebigop(scale, scale); "big circle dot";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw circle(centre, op_height/2);
fill circle(centre, scale * 1.3dot_size);
endchar;
endfor;
charlist current_char - 1: current_char;
for scale = 1, 1.4:
beginsquarebigop(scale, scale); "big circle circle";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw circle(centre, op_height/2);
draw circle(centre, op_height/5);
endchar;
endfor;
charlist current_char - 1: current_char;
for scale = 1, 1.4:
beginsquarebigop(scale, scale); "big circle triangle";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
draw circle(centre, op_height/2);
pickup rule_pen;
draw triangle(centre, op_height/5, 90);
endchar;
endfor;
charlist current_char - 1: current_char;
for scale = 1, 1.4:
beginsquarebigop(scale, scale); "big circle asterisk";
thick := 4/3rule_thickness * sqrt scale;
pickup pencircle scaled thick;
r := op_height/2 - 11/10rule_thickness * (4/3 * sqrt scale);
draw circle(centre, op_height/2);
penpos a0(4/3thick, 0 - 7);
penpos a1(4/3thick, 72 - 7);
penpos a2(4/3thick, 144 - 7);
penpos a3(4/3thick, 216 - 7);
penpos a4(4/3thick, 288 - 7);
penpos b0(2/3thick, 0 - 7);
penpos b1(2/3thick, 72 - 7);
penpos b2(2/3thick, 144 - 7);
penpos b3(2/3thick, 216 - 7);
penpos b4(2/3thick, 288 - 7);
reg_poly_points(a)(5, centre, r, 77);
z.b0 = z.b1 = z.b2 = z.b3 = z.b4 = centre;
fill stroke z.a0e -- z.b0e;
fill stroke z.a1e -- z.b1e;
fill stroke z.a2e -- z.b2e;
fill stroke z.a3e -- z.b3e;
fill stroke z.a4e -- z.b4e;
endchar;
endfor;
charlist current_char - 1: current_char;
for scale = 1, 1.4:
beginsquarebigop(scale, scale); "big circle star";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
r := op_height/2 - 11/10rule_thickness * (4/3 * sqrt scale);
draw circle(centre, op_height/2);
pickup rule_pen;
reg_poly_points(a)(5, centre, r, 90);
reg_poly_points(b)(5, centre, r/10, 126);
draw z.a0 -- z.b0 -- z.a1 -- z.b1 -- z.a2 -- z.b2 -- z.a3 -- z.b3 -- z.a4 -- z.b4 -- cycle;
fill z.a0 -- z.b0 -- z.a1 -- z.b1 -- z.a2 -- z.b2 -- z.a3 -- z.b3 -- z.a4 -- z.b4 -- cycle;
endchar;
endfor;
charlist current_char - 1: current_char;
for sign = 1, -1:
for scale = 1.1, 1.54:
beginbigop(1.1scale, scale); "product";
draw_product(centre, op_width, op_height, sign, 5/3rule_thickness * sqrt scale);
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
def draw_sum(suffix $)(expr centre, width, height, thick) =
thin := 2/3thick;
z1$ - z0$ = z3$ - z2$ = width * dir 0;
z2$ - z0$ = height * dir 90;
1/2[1/2[z0$,z1$], 1/2[z2$,z3$]] = centre;
z4$ - z1$ = z3$ - z5$ = 1/5height * dir 90;
z6$ = whatever[z0$,z1$] = z4$ - whatever * dir 77;
z7$ = whatever[z2$,z3$] = z5$ + whatever * dir -77;
penpos 0$(thick, 90);
penpos 6$(thick, 90);
penpos 4$(thin, 167);
penpos 2$(thin, -90);
penpos 7$(thin, -90);
penpos 5$(thin, 203);
z8$ = centre;
penpos 8$(2thin, 20);
z9$ = z8$r + whatever * (z2$r - z8$l) = whatever[z2$r,z7$r];
z10$ = z0$l + thin * dir 90;
z11$ = z8$r + whatever * (z10$ - z8$l);
y11$ = y10$;
z12$ = whatever[z10$,z8$l];
y12$ = y0$r;
fill z0$l -- z6$l -- z4$l -- z4$r{-dir 77} .. {dir 180}1/4[z6$r,z0$r] -- z12$ -- z10$ -- cycle;
fill z2$l -- z7$l -- z5$l -- z5$r{dir 113} .. {dir 180}1/4[z7$r,z2$r] -- z2$r -- cycle;
fill z2$r -- z8$l -- z8$r -- z9$ -- cycle;
fill z10$ -- z8$l -- z8$r -- z11$ -- cycle;
enddef;
for scale = 1.1, 1.54:
beginbigop(scale, scale); "sum";
draw_sum(a)(centre, op_width, op_height, 4/3rule_thickness * sqrt scale);
endchar;
endfor;
charlist current_char - 1: current_char;
for number = 0, 1, 2, 3:
for scale = 1, 1.8:
display_shift# := (1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := (scale-1) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift);
beginsymbol(scale * (1/2 + 2/3number) * order_width# + 2side_bearing# + display_shift# - text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"integral";
italcorr (1 + 3/2(scale-1)) * 2/3order_width#; % kerning between upper limit and lower limit
pair centre;
for i = 0 upto number:
centre := ((w - scale * (number - 2*i) * 2/3order_width + display_shift + text_shift)/2,
(h - d)/2);
draw_integral([i])(scale, centre);
endfor;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for scale = 1, 1.8:
display_shift# := (1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := (scale-1) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift);
beginsymbol(scale * (1/2 + 1) * order_width# + 2side_bearing# + display_shift# - text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"integral dots";
italcorr (1 + 3/2(scale-1)) * 2/3order_width#; % kerning between upper limit and lower limit
pair centre;
centre := ((w - 2scale * order_width + display_shift + text_shift)/2,
(h - d)/2);
draw_integral([0])(scale, centre);
centre := ((w + 2scale * order_width + display_shift + text_shift)/2,
(h - d)/2);
draw_integral([2])(scale, centre);
z0 = 1/4[z0[0],z0[2]];
z1 = 2/4[z0[0],z0[2]];
z2 = 3/4[z0[0],z0[2]];
fill circle(z0, dot_size);
fill circle(z1, dot_size);
fill circle(z2, dot_size);
endchar;
endfor;
charlist current_char - 1: current_char;
for sign = 1, -1:
for scale = 1, 1.8:
display_shift# := (1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := (scale-1) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift);
beginsymbol(scale * 1/2order_width# + 2side_bearing# + display_shift# - text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"landup/down integral";
italcorr (1 + 3/2(scale-1)) * 2/3order_width#; % kerning between upper limit and lower limit
pair centre;
centre := ((w + display_shift + text_shift)/2, (h - d)/2);
draw_integral(a)(scale, centre);
pickup pencircle scaled 1/2thick;
z0 = z0a + sign * sqrt scale * (-2thick, -2/3thick);
z1 = z0a + sign * sqrt scale * ( 0, 2/3thick);
z2 = z0a + sign * sqrt scale * ( 2thick, -2/3thick);
draw z0 .. z1 .. z2;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for scale = 1, 1.8:
display_shift# := (1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := (scale-1) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift);
beginsymbol(scale * 1/2order_width# + 2side_bearing# + display_shift# - text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"stroked integral";
italcorr (1 + 3/2(scale-1)) * 2/3order_width#; % kerning between upper limit and lower limit
pair centre;
centre := ((w + display_shift + text_shift)/2, (h - d)/2);
draw_integral(a)(scale, centre);
alpha := angle (z1a - z3a) - 70;
pickup pencircle scaled 1/2thick;
draw (z0a - sqrt scale * 2thick * dir alpha) -- (z0a + sqrt scale * 2thick * dir alpha);
endchar;
endfor;
charlist current_char - 1: current_char;
for number = 0, 1:
for scale = 1, 1.8:
display_shift# := (1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := (scale-1.3) * 4/5order_width#;
define_whole_pixels(display_shift, text_shift);
beginsymbol(scale * (1/2 + 2/3number) * order_width# + 2side_bearing# + display_shift# - text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"contour integral";
italcorr (1 + 3/2(scale-1)) * 2/3order_width#; % kerning between upper limit and lower limit
pair centre;
for i = 0 upto number:
centre := ((w - scale * (number - 2*i) * 2/3order_width + display_shift + text_shift)/2,
(h - d)/2);
draw_integral([i])(scale, centre);
endfor;
centre := 1/2[z0[0], z0[number]];
pickup pencircle scaled 5/12thick;
if number = 0:
draw circle(centre, 2thick * sqrt scale);
else:
draw super_ellipse(centre,
(2thick + number * 5/5thick) * sqrt scale,
(2thick + number * 1/5thick) * sqrt scale,
7/8, 0);
fi;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for alpha = -90, 90:
for sign = 1, -1:
for scale = 1, 1.8:
display_shift# := (1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := (scale-1.3) * 4/5order_width#;
define_whole_pixels(display_shift, text_shift);
beginsymbol(scale * 1/2order_width# + 2side_bearing# + display_shift# - text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"oriented contour integral";
italcorr (1 + 3/2(scale-1)) * 2/3order_width#; % kerning between upper limit and lower limit
pair centre;
centre := ((w+display_shift+text_shift)/2, (h-d)/2);
draw_integral(a)(scale, centre);
pickup pencircle scaled 5/12thick;
r := 2thick * sqrt scale;
beta := alpha + angle (z1a - z3a) + 25sign;
reg_poly_points(a)(8, z0a, r, beta);
z0 = z0a + r * dir (beta + 10);
z1 = z0a + r * dir (beta - 10);
draw z0{dir (beta + 100)} .. z.a1 .. z.a2 .. z.a3 .. z.a4 .. z.a5 .. z.a6 .. z.a7 ..
{dir (beta + 80)}z1;
if sign > 0:
draw arrowhead(z1, (beta + 65), 1/2scale * arrow_spread);
else:
draw arrowhead(z0, (beta - 65), 1/2scale * arrow_spread);
fi;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
endfor;
for scale = 1, 1.8:
display_shift# := (1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := (scale-1) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift);
beginsymbol(scale * 1/2order_width# + 2side_bearing# + display_shift# - text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"sum integral";
italcorr (1 + 3/2(scale-1)) * 2/3order_width#; % kerning between upper limit and lower limit
pair centre;
centre := ((w + display_shift + text_shift)/2, (h - d)/2);
draw_integral(a)(scale, centre);
draw_sum(b, 1/3[z0a.l,z0a.r], scale * order_width, 3/4scale * asc_height, 1/2thick);
endchar;
endfor;
charlist current_char - 1: current_char;
%for scale = 1, 1.8:
%
% display_shift# := 0;%(1 + 5/2(scale-1)) * 1/4order_width#;
% text_shift# := -2/8order_width#;
% script_delta# := (1 + 3/2(scale-1)) * 1/2order_width#;
% define_whole_pixels(display_shift, text_shift, script_delta);
%
% beginsymbol(scale * 1/2 * order_width# + 2side_bearing# - display_shift# - 2text_shift#,
% ((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
% (scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
% "partial integral";
%
% italcorr script_delta#; % kerning between upper limit and lower limit
% endchar;
%endfor;
%charlist current_char - 1: current_char;
for scale = 1, 1.8:
display_shift# := 0;%(1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := -2/8order_width#;
script_delta# := (1 + 3/2(scale-1)) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift, script_delta);
beginsymbol(scale * (1/2 + 1) * order_width# + 2side_bearing# - display_shift# - 2text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"partial integral dots";
italcorr (1 + 3/2(scale-1)) * 2/3order_width#; % kerning between upper limit and lower limit
pair centre;
centre := (1/2(w + script_delta), (h-d)/2);
z0 = centre + 1/2scale * order_width * left;
z1 = centre;
z2 = centre + 1/2scale * order_width * right;
fill circle(z0, dot_size);
fill circle(z1, dot_size);
fill circle(z2, dot_size);
endchar;
endfor;
charlist current_char - 1: current_char;
for sign = 1, -1:
for scale = 1, 1.8:
display_shift# := 0;%(1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := -4/8order_width# + 5/4(scale-1) * 2/8order_width#;
script_delta# := (1/2 + 4/2(scale-1)) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift, script_delta);
beginsymbol(scale * 1/2 * order_width# + 2side_bearing# - display_shift# - 2text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"partial landup/down integral";
italcorr script_delta#; % kerning between upper limit and lower limit
pair centre;
centre := (1/2(w + script_delta), (h-d)/2);
pickup pencircle scaled 1/2thick;
z0 = centre + sign * sqrt scale * (-2thick, -2/3thick);
z1 = centre + sign * sqrt scale * ( 0, 2/3thick);
z2 = centre + sign * sqrt scale * ( 2thick, -2/3thick);
draw z0 .. z1 .. z2;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for scale = 1, 1.8:
display_shift# := 0;%(1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := -4/8order_width# + 5/4(scale-1) * 2/8order_width#;
script_delta# := (1/2 + 4/2(scale-1)) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift, script_delta);
beginsymbol(scale * 1/2 * order_width# + 2side_bearing# - display_shift# - 2text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"partial stroked integral";
italcorr script_delta#; % kerning between upper limit and lower limit
pair centre;
centre := (1/2(w + script_delta), (h-d)/2);
alpha := 10;
pickup pencircle scaled 1/2thick;
draw (centre - sqrt scale * 2thick * dir alpha) -- (centre + sqrt scale * 2thick * dir alpha);
endchar;
endfor;
charlist current_char - 1: current_char;
for number = 0, 1:
for scale = 1, 1.8:
display_shift# := 0;%(1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := -4/8order_width# + 5/4(scale-1) * 2/8order_width#;
script_delta# := (1/2 + 4/2(scale-1)) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift, script_delta);
beginsymbol(scale * (1/2 + 2/3number) * order_width# + 2side_bearing# - display_shift# - 2text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"partial contour integral";
italcorr script_delta#; % kerning between upper limit and lower limit
pair centre;
centre := (1/2(w + script_delta), (h-d)/2);
pickup pencircle scaled (5/12thick * sqrt scale);
if number = 0:
draw circle(centre, 2thick * sqrt scale);
else:
draw super_ellipse(centre,
(2thick + number * 5/5thick) * sqrt scale,
(2thick + number * 1/5thick) * sqrt scale,
7/8, 0);
fi;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
for alpha = -90, 90:
for sign = 1, -1:
for scale = 1, 1.8:
display_shift# := 0;%(1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := -4/8order_width# + 5/4(scale-1) * 2/8order_width#;
script_delta# := (1/2 + 4/2(scale-1)) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift, script_delta);
beginsymbol(scale * 1/2order_width# + 2side_bearing# - display_shift# - 2text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"partial oriented contour integral";
italcorr script_delta#; % kerning between upper limit and lower limit
pair centre;
centre := (1/2(w + script_delta), (h-d)/2);
pickup pencircle scaled (5/12thick * sqrt scale);
r := 2thick * sqrt scale;
beta := alpha + 80 + 25sign;
reg_poly_points(a)(8, centre, r, beta);
z0 = centre + r * dir (beta + 10);
z1 = centre + r * dir (beta - 10);
draw z0{dir (beta + 100)} .. z.a1 .. z.a2 .. z.a3 .. z.a4 .. z.a5 .. z.a6 .. z.a7 ..
{dir (beta + 80)}z1;
if sign > 0:
draw arrowhead(z1, (beta + 65), 1/2scale * arrow_spread);
else:
draw arrowhead(z0, (beta - 65), 1/2scale * arrow_spread);
fi;
endchar;
endfor;
charlist current_char - 1: current_char;
endfor;
endfor;
for scale = 1, 1.8:
display_shift# := (1 + 5/2(scale-1)) * 1/4order_width#;
text_shift# := (scale-1) * 1/2order_width#;
define_whole_pixels(display_shift, text_shift);
beginsymbol(scale * 1/2order_width# + 2side_bearing# + display_shift# - text_shift#,
((scale - 1)/2 + 1) * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#,
(scale - 1)/2 * 1.4asc_height# + scale * 1/6equal_spread# + 2/3rule_thickness#);
"partial sum integral";
italcorr (1 + 3/2(scale-1)) * 2/3order_width#; % kerning between upper limit and lower limit
pair centre;
z0 = (1/2(w + script_delta), (h-d)/2);
penpos0(4/5thick, 0);
draw_sum(a, 1/3[z0l,z0r], scale * order_width, 3/4scale * asc_height, 1/2thick * sqrt scale);
endchar;
endfor;
charlist current_char - 1: current_char;
for scale = 1, 1.4:
beginbigop(3/4scale, scale); "complement";
pickup pencircle scaled (4/3rule_thickness * sqrt scale);
z0 = centre + op_height/2 * up;
z1 = centre - op_height/2 * up;
z2 = centre - op_width/2 * right;
z3 = centre + op_width/2 * right;
draw (1/4[z0,z1] + op_width/2 * right){up}
.. z0
.. {down}(1/3[z0,z1] - op_width/2 * right)
-- (2/3[z0,z1] - op_width/2 * right){down}
.. z1
.. (3/4[z0,z1] + op_width/2 * right){up};
endchar;
endfor;
charlist current_char - 1: current_char;