summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf')
-rw-r--r--Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf264
1 files changed, 264 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf b/Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf
new file mode 100644
index 00000000000..f8855a3736d
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf
@@ -0,0 +1,264 @@
+% mathematical symbols by Anthony Phan.
+% file: mathsymb.mf (various mathematical symbols)
+% last modification: May 16, 2005.
+% Only known charcodes will be generated.
+
+def horizontal_rules_list=math_axis,
+ -body_depth,-desc_depth,x_height,cap_height,asc_height,body_height,
+ math_axis-0.5spread1,math_axis-0.5spread2,math_axis-0.5spread3,
+ math_axis-0.5spread4,
+ math_axis+0.5spread1,math_axis+0.5spread2,math_axis+0.5spread3,
+ math_axis+0.5spread4,
+enddef;
+
+%%% !!! marked signs are to be revised
+
+use_rule1;
+
+% standard
+
+beginchar(hex"20",6u#+2letter_fit#,0,0);
+ "Normal space";
+endchar;
+
+% hex"00"
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Top dot plus sign";
+ pickup tiny.nib;
+ pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90);
+ lft x1l=hround 0.5(w-rth); x2=x1;
+ lft x3=Appr; x1-x3=x4-x1=y1-y3=y3-y2; y3=y4=math_axis;
+ filldraw stroke z1e..z2e; filldraw stroke z3e..z4e;
+ pickup null.nib;
+ adjust_dot5((x1,y3+6.5u+0.5dtsz),dtsz,true,false); dot(5,5');
+ penlabels(1,2,3,4);
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Top dot minus sign";
+ pickup tiny.nib;
+ lft x1=Appr; rt x2=w-Appr;
+ y2=y1=math_axis; pos1(rth,90); pos2(rth,90);
+ filldraw stroke z1e..z2e; penlabels(1,2);
+ adjust_dot3((0.5[x1,x2],y1+math_spread[0.5x_height,0.6x_height]),
+ dtsz,true,false); dot(3,3');
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Top dot times sign";
+ pickup rule.nib; x0=good.x 0.5w;
+ pickup tiny.nib; rt x0'=w-Appr; y0=y0'=math_axis;
+ z1-z0=z0-z2=(z0'-z0) rotated 45; z3-z0=z0-z4=(z0'-z0) rotated -45;
+ pos1(rth+2eps,-45); pos2(rth+2eps,-45);
+ pos3(rth+2eps,45); pos4(rth+2eps,45);
+ filldraw stroke z1e..z2e; filldraw stroke z4e..z3e;
+ pickup null.nib;
+ adjust_dot5((x0,y0+5.5u+0.5dtsz),dtsz,true,false); dot(5,5');
+ penlabels(1,2,3,4);
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Bot dot minus sign";
+ pickup tiny.nib;
+ lft x1=Appr; rt x2=w-Appr;
+ y2=y1=math_axis; pos1(rth,90); pos2(rth,90);
+ filldraw stroke z1e..z2e; penlabels(1,2);
+ adjust_dot3((0.5[x1,x2],y1-math_spread[0.5x_height,0.6x_height]),
+ dtsz,true,false); dot(3,3');
+endchar;
+
+beginchar(currentlocation,3u#+2appr#,cap_height#,0);
+ "Cap centered dot";
+ pickup null.nib;
+ adjust_dot1((0.5w,0.5h),1.2dtsz,false,false);
+ dot(1,1');
+endchar;
+
+beginchar(currentlocation,7u#+2appr#,v_center(7u#));
+ "Small box";
+ pickup tiny.nib;
+ a:=sqrt(3.14159)*0.5*max(7u,dtsz+rth0);
+ top y1r=top y2r=vround(math_axis+0.5a);
+ bot y3r=bot y4r=top y1r-vround a;
+ lft x1r=lft x4r=hround 0.5(w-a);
+ rt x2r=rt x3r=lft x1r+hround a;
+ rt x1l-lft x1r=rt x2r-lft x2l
+ =rt x3r-lft x3l=rt x4l-lft x4r=rth0;
+ top y1r-bot y1l=top y2r-bot y2l
+ =top y3l-bot y3r=top y4l-bot y4r=rth0;
+ filldraw stroke z1e--z2e--z3e--z4e--z1e;
+ penlabels(1,2,3,4);
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Large asterisk";
+ autorounded;
+ interim stress:=0.5; pickup null.nib;
+ numeric b,c,dag_curve,dag_stem; spread:=12u;
+ b=2.6hair; c=0.625b; dag_curve=round 1.1cap_curve; dag_stem=hair;
+ %
+ x0=hround(0.5w-0.5dag_curve)+0.5dag_curve;
+ y0=0.5[-d,h];
+ for $=1 upto 6: z[$]=b*dir($*60+30)+z0;
+ z[$]'=c*dir($*60+60)+z0; endfor
+ filldraw for $=1 upto 6: dagger_stroke[$](round(0.5spread-b)+eps,
+ dag_curve,dag_stem,dir($*60+30))...z[$]'...endfor cycle;
+ labels(0,1',2',3',4',5',6');
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Large co-asterisk";
+ autorounded;
+ interim stress:=0.5;
+ pickup null.nib;
+ numeric b,c,dag_curve,dag_stem; spread:=12u;
+ b=2.6hair; c=0.625b; dag_curve=round 1.1cap_curve; dag_stem=hair;
+ %
+ x0=hround(0.5w-0.5dag_curve)+0.5dag_curve;
+ y0=0.5[-d,h];
+ for $=1 upto 6: z[$]=b*dir($*60-60)+z0;
+ z[$]'=c*dir($*60-30)+z0; endfor
+ filldraw for $=1 upto 6: dagger_stroke[$](round(0.5spread-b)+eps,
+ dag_curve,dag_stem,dir($*60-60))...z[$]'...endfor cycle;
+ labels(0,1',2',3',4',5',6');
+endchar;
+
+% beginchar(currentlocation,arithmetic_bounds);
+% "Top dot truc sign";
+% pickup tiny.nib;
+% pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90);
+% top y1=top y3r=top y4r=h; bot y2=-d;
+% lft x1l=hround 0.5(w-rth); x2=x1;
+% lft x3=Appr; x1-x3=x4-x1; filldraw stroke z1e..z2e;
+% filldraw stroke z3e..z4e; pickup null.nib;
+% adjust_dot5((x1,h+u+0.5dtsz),dtsz,true,false); dot(5,5');
+% penlabels(1,2,3,4);
+% endchar;
+
+% beginchar(currentlocation,arithmetic_bounds);
+% "Top dot curT sign";
+% pickup tiny.nib;
+% pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90);
+% bot y1=bot y3l=bot y4l=-d; top y2=h;
+% lft x1l=hround 0.5(w-rth); x2=x1;
+% lft x3=appr; x1-x3=x4-x1; filldraw stroke z2e..z1e;
+% filldraw stroke z3e..z4e; pickup null.nib;
+% adjust_dot5((x1,h+u+0.5dtsz),dtsz,true,false); dot(5,5');
+% penlabels(1,2,3,4);
+% endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Top circ plus sign";
+ pickup tiny.nib;
+ pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90);
+ lft x1l=hround 0.5(w-rth); x2=x1;
+ lft x3=Appr; x1-x3=x4-x1=y1-y3=y3-y2; y3=y4=math_axis;
+ filldraw stroke z1e..z2e; % stem
+ filldraw stroke z3e..z4e; % crossbar
+ pickup rule.nib0;
+ adjust_dot5((x1,y3+6u+0.5rth0+1.5u),3u+rth0,true,false);
+ full_dot:=false; dot(5,5');
+ penlabels(1,2,3,4);
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Plus circle sign";
+ pickup tiny.nib;
+ pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90);
+ lft x1l=hround 0.5(w-rth); x2=x1;
+ lft x3=Appr; x1-x3=x4-x1=y1-y3=y3-y2; y3=y4=math_axis;
+ filldraw stroke z1e..z2e; % stem
+ filldraw stroke z3e..z4e; % crossbar
+ pickup rule.nib; z0=(x1,y3);
+ rt x5=ceiling rt 0.75[Appr,w-Appr]+eps; y5=y0;
+ z5-z0=z0-z7; z6-z0=z0-z8=(z5-z0) rotated 90;
+ draw superellipse(z5,z6,z7,z8,superness);
+ penlabels(1,2,3,4); labels(5,6,7,8);
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Convolution sign";
+ numeric darkness; darkness=0.8;
+ pickup rule.nib; x0=good.x 0.5w;
+ pickup tiny.nib; rt x1=w-Appr; y0=y1=y1'=y1''=math_axis;
+ x1'=min(x0+2.5rth,0.5[x0,x1]); x1''=min(x0+1.25rth,0.25[x0,x1]);
+ forsuffixes $=,':
+ z1$-z0=z0-z2$; z3$-z0=z0-z4$=(z1$-z0) rotated 45;
+ z5$-z0=z0-z6$=(z1$-z0) rotated 90;
+ z7$-z0=z0-z8$=(z1$-z0) rotated -45;
+ pos1$(rth,90); pos2$(rth,90); pos3$(rth,135); pos4$(rth,135);
+ pos5$(rth,0); pos6$(rth,0); pos7$(rth,45); pos8$(rth,45);
+ penlabels(1$,2$,3$,4$,5$,6$,7$,8$);
+ endfor
+ z1''-z0=z0-z2''; z3''-z0=z0-z4''=(z1''-z0) rotated 45;
+ z5''-z0=z0-z6''=(z1''-z0) rotated 90;
+ z7''-z0=z0-z8''=(z1''-z0) rotated -45;
+ pos1''(darkness*rth,90); pos2''(darkness*rth,90);
+ pos3''(darkness*rth,135); pos4''(darkness*rth,135);
+ pos5''(darkness*rth,0); pos6''(darkness*rth,0);
+ pos7''(darkness*rth,45); pos8''(darkness*rth,45);
+ penlabels(1'',2'',3'',4'',5'',6'',7'',8'');
+ filldraw stroke z2e---z2'e...z2''e---z1''e...z1'e---z1e;
+ filldraw stroke z4e---z4'e...z4''e---z3''e...z3'e---z3e;
+ filldraw stroke z5e---z5'e...z5''e---z6''e...z6'e---z6e;
+ filldraw stroke z8e---z8'e...z8''e---z7''e...z7'e---z7e;
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Divide on times sign";
+ numeric darkness; darkness=0.8;
+ pickup rule.nib; x0=good.x 0.5w;
+ pickup tiny.nib; rt x1=w-Appr; y0=y1=y1'=y1''=math_axis;
+ x1'=min(x0+2.5rth,0.5[x0,x1]); x1''=min(x0+1.25rth,0.25[x0,x1]);
+ z1-z0=z0-z2; z1'-z0=z0-z2'; z1''-z0=z0-z2'';
+ z3-z0=z0-z4=(z1-z0) rotated 45; z7-z0=z0-z8=(z1-z0) rotated 135;
+ pos1(rth,90); pos2(rth,90); pos1'(rth,90); pos2'(rth,90);
+ pos3(rth,135); pos4(rth,135); pos7(rth,225); pos8(rth,225);
+ pos1''(darkness*rth,90); pos2''(darkness*rth,90);
+ filldraw stroke z2e---z2'e...z2''e---z1''e...z1'e---z1e;
+ filldraw stroke z4e..z3e; filldraw stroke z8e..z7e;
+ pickup null.nib;
+ adjust_dot5((x0,y0+5.5u-0.5dtsz),dtsz,true,false); dot(5,5');
+ adjust_dot6((x0,y0-5.5u+0.5dtsz),dtsz,true,false); dot(6,6');
+ penlabels(1,1',1'',2,2',2'',3,4,7,8);
+endchar;
+
+beginchar(currentlocation,7u#+2appr#,v_center(7u#));
+ "Small full diamond";
+ pickup tiny.nib;
+ a:=sqrt(3.14159)*0.5*max(7u,dtsz+rth0)-0.5rth0;
+ y2=y4=good.y math_axis; x1=x3=good.x 0.5w;
+ y1-y2=y2-y3=vround(0.5a*sqrt(2)-tiny)+eps;
+ x2-x1=x1-x4=hround(0.5a*sqrt(2)-tiny)+eps;
+ fill z1--z2--z3--z4--cycle;
+ labels(1,2,3,4);
+endchar;
+
+beginchar(currentlocation,7u#+2appr#,v_center(7u#));
+ "Small full box";
+ pickup tiny.nib;
+ a:=sqrt(3.14159)*0.5*max(7u-rth0,dtsz);
+ top y1=top y2=vround(math_axis+0.5a);
+ bot y3=bot y4=top y1-vround a;
+ lft x1=lft x4=hround 0.5(w-a);
+ rt x2=rt x3=lft x1+hround a;
+ filldraw z1--z4--z3--z2--cycle;
+ labels(1,2,3,4);
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Big five star";
+ pickup tiny.nib;
+ draw_star.a((0.5w,math_axis),5,6u+o,0.1,90,false);
+ labels(a);
+endchar;
+
+beginchar(currentlocation,arithmetic_bounds);
+ "Big six star";
+ pickup tiny.nib;
+ draw_star.a((0.5w,math_axis),6,6u+o,0.3,90,false);
+ labels(a);
+endchar;
+
+% hex"10"