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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
%% half-dimer pointing up
% name, width, height, depth
beginchar("a",1.5pt#,7pt#,0);
pickup pencircle scaled 4;
x1=y1=x2=x3=0;
y2=h;
x4=-x5=-y4=-y5=w;
y3=2y4;
draw z1..z2;
draw z1..z4..z3..z5..cycle;
endchar;
%% half-dimer pointing down
beginchar("b",1.5pt#,7pt#,0);
pickup pencircle scaled 4;
x1=x2=x3=0;
y1=h-2w;
y2=-2w;
x4=-x5=w;
y4=y5=h-w;
y3=h;
draw z1..z2;
draw z1..z4..z3..z5..cycle;
endchar;
%% radius for horizontal dimers
r=1.5pt;
%% half-dimer pointing right
beginchar("c",10pt#,4.5pt#,0);
pickup pencircle scaled 4;
y1=y2=y3=h-r;
x3=0;
y4=h;
y5=h-2r;
x4=x5=r;
x1=2r;
x2=w;
draw z1..z2;
draw z1..z4..z3..z5..cycle;
endchar;
%% half-dimer pointing left
beginchar("d",10pt#,4.5pt#,0);
pickup pencircle scaled 4;
y1=y2=y3=h-r;
x3=w;
y4=h;
y5=h-2r;
x4=x5=w-r;
x1=w-2r;
x2=0;
draw z1..z2;
draw z1..z4..z3..z5..cycle;
endchar;
end
|