x1,y1是圆内的一个点(不在圆的圆周上)。如何计算完全相反的点?
| | x1,y1 | -------|-------- | x2,y2 | |
答案 0 :(得分:3)
选项1:将其转换为极坐标,并将pi添加到角度部分。
你基本上使用atan2
(在大多数语言中都可用)来计算角度,并使用毕达哥拉斯公式来计算半径。
选项2:计算相对于origo的差异,并将其否定为原点。
让(ox,oy)成为圆心。现在可以用
计算“相反点”x2 = ox - (x1 - ox)
y2 = oy - (y1 - oy)
答案 1 :(得分:1)
如果您可以假设中心位于(0,0),为什么不采取(-x1,-y1)?如果它有任何不同,请将-x1,-y1添加到中心坐标。
答案 2 :(得分:0)
这听起来像是一个家庭作业问题。但是我会让提问者休息一下并说: (x2,y2)= f(x1,y1)其中f是(x * -1,y * -1)。
答案 3 :(得分:0)
如果圆的中心位于(0,0),则x2 = -x1,y2 = -y1。如果中心位于(xc,yc),那么x2 = 2 xc - x1,y2 = 2 yc - y1。