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
|
// Empty bucket: asy bucket -f svg
// Filled bucket: asy bucket -f svg -u fill=true -o filledbucket
real pixel=1inch/96;
size(32*pixel);
defaultpen(1.75bp);
real h=4;
real r=3;
path left=(-r,h)--(-r,0);
path right=(r,0)--(r,h);
path bottom=xscale(r)*arc(0,1,180,360);
real H=0.9h;
path Left=(-r,H/2)--(-r,0);
path Right=(r,0)--(r,H/2);
bool fill=false; // Set to true for filled bucket.
usersetting();
if(fill)
fill(Left--bottom--Right--shift(0,H)*xscale(r)*arc(0,1,0,180)--cycle,gray);
draw(shift(0,h)*xscale(r)*unitcircle);
draw(left--bottom--right);
draw(shift(0,h)*scale(r)*arc(0,1,0,180));
|