已知一直线段的两端点坐标,过其中一端点作长度为L的垂线段,如何得到垂线段的另一端点坐标?
已知一直线段的两端点坐标P1(x1,y1)、P2(x2,y2),过其中一端点P1作长度为L的垂线段,如何得到垂线段的另一端点坐标?
多谢高手指点
[解决办法]
P1 P2的距离可以根据坐标求出,L长度已知,直角三角形就出来了,怎么求都可以了阿
[解决办法]
设要求的点坐标为P(x,y),L0为P1P2的长度,用复数向量旋转可以得到:
逆时针:(x-x1)+(y-y1)*i=[(x2-x1)+(y2-y1)*i]*[cos(PI/2)+i*sin(PI/2)]*L/L0
所以 x = (y1-y2)*L/L0 + x1
y = (x2-x1)*L/L0 + y1
顺时针:(x-x1)+(y-y1)*i=[(x2-x1)+(y2-y1)*i]*[cos(-PI/2)+i*sin(-PI/2)]*L/L0
所以 x = (y2-y1)*L/L0 + x1
y = (x1-x2)*L/L0 + y1