1

有什么方法可以让 P2 的位置 (x, y) 知道 P1 的位置 (30, 30) 以及它们之间的度数?

编辑
是的,我知道中心位置,并且 P1 将始终位于其上方。
角度可以从 0º 到 360º。

例子

4

5 回答 5

3

考虑到它的角度(从顶部而不是右侧)和圆的半径,您实际上只是想在圆上找到一个点。

X = center.X + r * cos(90 - angle)  
Y = center.Y + r * sin(90 - angle)   

您可能需要转换为弧度。

于 2012-12-12T22:04:45.763 回答
2
assume : 0<a:angle<90 ,c(x,y):center ,r:radius:distance between c & p1

b=弧(cos((xp1-xcenter)/r)))

xp2 = xcenter + r * (cos(ba)) ,
yp2 = ycenter + r * (sin(ba))

如果 b=90 和 xp1,yp1=30 :

xp2 = r * cos(90-a) + 30 = r * sin(a) + 30

yp2 = 30 - r * sin(90-a) = 30 - r * cos(a)

于 2012-12-12T22:11:21.733 回答
0

是的,如果您知道圆的直径(或半径)(或等效地,圆心的位置)。

如果你这样做了,那么你可以向后工作到圆的中心,然后使用 sin() 和 cos() 来找到 P2 的位置(当然还有其他方法——这只是一种明显的可能性)。

于 2012-12-12T21:55:46.530 回答
0

只需将 P1 围绕圆心旋转给定角度即可。

于 2012-12-12T22:02:07.147 回答
0

它是一个等腰三角形。在那个三角形中,你知道两个点和所有的角度。只需找到第三点这是答案:如何计算三角形(2D)中第三点的坐标,知道 2 点坐标,所有长度和所有角度

于 2012-12-12T22:06:12.243 回答