1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
% More character codes. Created by Emma Pease, CSLI,
% Stanford University. Based for the most part on computer modern characters
% down hook and up hook were created in order to form hookuparrows and
% hookdownarrows
cmchar "Down hook";
compute_spread(.45x_height#,.55x_height#);
beginchar(oct"173",5u#,v_center(2spread#+rule_thickness#));
adjust_fit(0,0); pickup rule.nib; autorounded;
rt x2=hround(w-u)+eps; x1=x3=w-x2;
y1-y3=spread; y2=.5[y1,y3]; y3=math_axis;
draw z1{right}...z2{down}...z3{left}; % hook
currentpicture:=currentpicture rotatedaround ((.5w,y2),90);
labels(1,2,3); endchar;
cmchar "Up hook";
compute_spread(.45x_height#,.55x_height#);
beginchar(oct"174",5u#,v_center(2spread#+rule_thickness#));
adjust_fit(0,0); pickup rule.nib; autorounded;
rt x2=hround(w-u)+eps; x1=x3=w-x2;
y1-y3=spread; y2=.5[y1,y3]; y3=math_axis;
draw z1{right}...z2{down}...z3{left}; % hook
currentpicture:=currentpicture rotatedaround ((.5w,y2),-90);
labels(1,2,3); endchar;
cmchar "2bsquare";
beginchar(oct"176",9u#,fig_height#,comma_depth#);
adjust_fit(0,0); pickup rule.nib;
x1=x4=x8=x7; x2=x3=x5=x6; top y1=top y2=h;
y3=.6[y2,math_axis]; y3=y4; y5=y8; y7=y6;
y5=.6[y6,math_axis]; math_axis=.5[y3,y5];
y1-y4=x3-x4; lft x4=w-rt x3;
filldraw z1--z2--z3--z4--cycle;
filldraw z5--z6--z7--z8--cycle;
labels(1,2,3,4,5,6,7,8); endchar;
cmchar "bsquare";
beginchar(oct"175",9u#,v_center(7u#));
adjust_fit(0,0); pickup rule.nib;
numeric a; a=sqrt(3.14159);
lft x6=lft x7=lft x5=hround (w/2 - (w-2u)*a/4);
x2=x1=x3=w-x6; top y1=top y7=h;
y6=y2=math_axis; y5=y3; z2=.5[z3,z1];
filldraw z1--z2--z3--z5--z7--cycle;
labels(1,2,3,5,7); endchar;
|