blob: 3525e4fc0594b560052716ebc53fba5f0cef07e5 (
plain)
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
|
prologues:=1;
numeric u;
1u = 1mm;
beginfig (1);
a = 40u;
g = 90;
z1 = right rotated g scaled a;
z2 = z1 rotated 120;
z3 = z1 rotated 240;
path c[];
c1 = fullcircle rotated g scaled 1/2a;
for k = 2 upto 4:
c[k] = c1 scaled k;
endfor
p = 2q;
p + q = 1/4a;
d = 2q;
path r[], s[], s[]';
for k = 1 upto 3:
r[k] = (0,0)--z[k];
s[k] = r[k] shifted (down scaled (p/2+d) rotated angle z[k]);
s[k]' = r[k] shifted (up scaled (p/2+d) rotated angle z[k]);
endfor
pen rpen, cpen;
cpen := pencircle scaled p;
rpen := pencircle scaled p;
pickup cpen;
filldraw c1 withcolor 0.75 red;
linecap := rounded;
draw c2 cutbefore s1' cutafter s1;
draw c3 cutbefore s1' cutafter s2;
draw c3 cutbefore s2' cutafter s1;
draw c4 cutbefore s1' cutafter s2;
draw c4 cutbefore s2' cutafter s3;
draw c4 cutbefore s3' cutafter s1;
endfig;
end
|