如何计算圆内的直径相反点?

4

x1,y1是圆内(不在圆周上)的一个点。如何计算它的直径对面的点?

       |
       |   x1,y1
       |
-------|--------
       |
x2,y2  |
       |
4个回答

5

选项1:将其转换为极坐标,并将pi添加到角度部分。

您可以使用大多数语言中可用的atan2来计算角度,并使用勾股定理来计算半径。

选项2:相对于原点计算差异,并将其加入原点的否定。

假设(ox,oy)是圆的中心。现在,“相反的点”可以通过以下方式计算:

x2 = ox - (x1 - ox)
y2 = oy - (y1 - oy)

1

如果你可以假设中心点在(0,0),为什么不直接取(-x1,-y1)呢?如果有任何不同,就将-x1,-y1加到中心坐标上。


0

这似乎是一个作业问题。但我会放过提问者,说: (x2,y2)= f(x1,y1),其中f为(x * -1,y * -1)。


0
如果圆的中心在(0,0)处,则x2 = -x1,y2 = -y1。如果中心在(xc, yc)处,则x2 = 2 xc - x1,y2 = 2 yc - y1。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接