变换平面上的三角形

时间:2016-06-09 11:09:18

标签: geometry transformation coordinate-systems coordinate-transformation

在XY平面上有一个点P1(x1,y1)P2(x2,y2)P3(x3,y3)的三角形。

转化后的最终位置为我们所知P1'(x,y)P2'(x,y) 我怎样才能找到第三点?

使用斜率(或距离)公式给出两个解(一个是另一个的镜像)。假设转换是平移和旋转的组合,我如何获得最终点P3'的新坐标?

1 个答案:

答案 0 :(得分:1)

如果您已经使用距离公式获得解决方案,则只需选择需要的镜像点。为了澄清,找到P1P2向量和P1P3向量的叉积的符号。然后找到P1'P2'向量和P1'Px向量的叉积的符号。如果迹象不同,请另外说明一点。

CrossProduct = (P2.X - P1.X) * (P3.Y - P1.Y) - (P2.Y - P1.Y) * (P3.X - P1.X)

在一般情况下,您可以找到变换矩阵系数并将此矩阵应用于第三点

     c  -s  0
M =  s   c  0
     dx  dy 1 
方程系统

c * x1 + s * y1 + dx = x1' 
-s * x1 + c * y1 + dy = y1' 
c * x2 + s * y2 + dx = x2' 
-s * x2 + c * y2 + dy = y2' 

解决未知的c,s,dx,dy(真的c和s不是独立的)