def eqn(self, x, n, size):
"Calculate paint boundary"
if not self.side: n = 1 - n
w, h = size
y = 0
xc = 0
for d in self.drops:
r = d[0] * w / 2
R = 1.1 * r
xc += r
dx = abs(x - xc)
if dx <= R:
dy = sqrt(R * R - dx * dx)
Y = (h + R) * self.posn(n, *d[1:]) + dy - R
if Y > y: y = Y
xc += r
return y, self.side
评论列表
文章目录