平面坐标系内已知端点为(p1,p2)的线段line,如何计算出过p1垂直于line,且长度为d的线段端点坐标

来源:百度知道 编辑:UC知道 时间:2024/07/02 03:35:39

设d端点坐标(a,b) 利用两直线垂直k1*k2=-1列出第一个方程。利用两点见距离=d列出第二个方程。解出a,b的值

用直线的参数方程做将会非常简单!

k1=(p1.y-p2.y)/(p1.x-p2.x) 已知直线的斜率
k2=-1/k1,垂直直线的斜率。
直线方程为:y=k2(x-p1.x)+p1.y
以p1为圆心,半径为d的圆方程为(x-p1.x)^2+(y-p1.y)^2=1
这两个方程联立一下即可以解出端点坐标

p1坐标为(x1,y1),p2坐标为(x2,y2)。

用坐标表示矢量p1p2为(x2-x1,y2-y1)。

设通过p1与矢量p1p2垂直的某个矢量为(x-x1,y-y1)。

两矢量垂直的充分必要条件是点积为零:
(x-x1)(x2-x1)+(y-y1)(y2-y1)=0
√(x-x1)2+(y-y1)2=1(设为该垂直矢量为单位矢量)

联立可得x,y。(x-x1,y-y1)为单位矢量。d(x-x1,y-y1)为长度为d的矢量,其端点坐标为:(dx-dx1+x1,dy-dy1+y1)。

完。