def getAngle(self, center, p1, p2):
dx1 = p1.x() - center.x();
dy1 = p1.y() - center.y();
dx2 = p2.x() - center.x();
dy2 = p2.y() - center.y();
c = math.sqrt(dx1*dx1 + dy1*dy1) * math.sqrt(dx2*dx2 + dy2*dy2)
if c == 0: return 0
y = (dx1*dx2+dy1*dy2)/c
if y>1: return 0
angle = math.acos(y)
if (dx1*dy2-dx2*dy1)>0:
return angle
else:
return -angle
评论列表
文章目录