x1,y1是圆内(不在圆周上)的一个点。如何计算它的直径对面的点?
| | x1,y1 | -------|-------- | x2,y2 | |
x1,y1是圆内(不在圆周上)的一个点。如何计算它的直径对面的点?
| | x1,y1 | -------|-------- | x2,y2 | |
选项1:将其转换为极坐标,并将pi添加到角度部分。
您可以使用大多数语言中可用的atan2
来计算角度,并使用勾股定理来计算半径。
选项2:相对于原点计算差异,并将其加入原点的否定。
假设(ox,oy)是圆的中心。现在,“相反的点”可以通过以下方式计算:
x2 = ox - (x1 - ox)
y2 = oy - (y1 - oy)
如果你可以假设中心点在(0,0),为什么不直接取(-x1,-y1)呢?如果有任何不同,就将-x1,-y1加到中心坐标上。
这似乎是一个作业问题。但我会放过提问者,说: (x2,y2)= f(x1,y1),其中f为(x * -1,y * -1)。