如何通过两个点,半径,圆心的扇区计算角度

时间:2016-04-06 13:03:26

标签: math geometry sector

如何通过两个点,半径,圆心的扇区计算角度。 我试试这个:(p1,p2 - 圆圈中的点,圆心的中心)

startAngle = (int)(180 / Mathf.PI * Mathf.Atan2(p1.y - center.y, p1.x - center.x));
endAngle = (int)(180 / Mathf.PI * Mathf.Atan2(p2.y - center.y, p2.x - center.x));

2 个答案:

答案 0 :(得分:1)

假设你想测量关于x轴逆时针的角度,你对我看起来很好。

Here it is in Latex,下标零数量为圆的中心。

答案 1 :(得分:1)

您可以使用交叉积和标量积找到第一个点和第二个点的向量之间的角度。这种方法给出了有符号(定向)角度。

dy1 = p1.y - center.y;
dx1 = p1.x - center.x;
dy2 = p2.y - center.y;
dx2 = p2.x - center.x;
SectorAngle = Mathf.Atan2(dx1*dy2-dx2*dy1, dx1*dx2+dy1*dy2)