计算笛卡尔偏移坐标 space
Calculate offset coordinate in a cartesian space
如果我有 2 个坐标点 A(x,y) 和点 B(x,y)
我需要计算特定距离和角度 90 度和 270 度的偏移坐标。
我怎么能?
找不到正确的公式。
如何获取C,D,E,F的坐标?
差异向量
dx = B.X - A.X
dy = B.Y - A.Y
垂直矢量
px = -dy
py = dx
矢量长度(也许您的数学库中有现成的函数 Hypot
或类似函数)
len = sqrt(px*px+py*py)
归一化(单位长度)向量
nx = px / len
ny = py / len
现在查找距离 dist
:
的点
C.X = A.X + nx * dist
C.Y = A.Y + nY * dist
G.X = A.X - nx * dist
G.Y = A.Y - nY * dist
B 附近的点相似
如果我有 2 个坐标点 A(x,y) 和点 B(x,y)
我需要计算特定距离和角度 90 度和 270 度的偏移坐标。 我怎么能?
找不到正确的公式。
如何获取C,D,E,F的坐标?
差异向量
dx = B.X - A.X
dy = B.Y - A.Y
垂直矢量
px = -dy
py = dx
矢量长度(也许您的数学库中有现成的函数 Hypot
或类似函数)
len = sqrt(px*px+py*py)
归一化(单位长度)向量
nx = px / len
ny = py / len
现在查找距离 dist
:
C.X = A.X + nx * dist
C.Y = A.Y + nY * dist
G.X = A.X - nx * dist
G.Y = A.Y - nY * dist
B 附近的点相似