点到两点直线的距离公式

已知点P(x1,y1,z3)到
P1(x2,y2,z3)与P2(x3,y3,z3)连成的直线的最短距离(也就是p点到经过p1 p2点的直线的投影距离)

无需推导,也不需要给个点到直线方程的距离公式,网上很多
不知道你的X^2+Y^2+Z^2是何东东
呵呵 编程序用的.只能用到这些已知数,其它还需要转换

验证正确 与否再采纳,否则会误导后来人

d(P,AB)=√[X^2+Y^2+Z^2]/√[(x2-x1)^2+(y2-y1)^2+(z2-z1)^2]
楼主快采纳!!!!!!!!!!!!!!!!!!
对的啊!!

1.若空间直线L的方程是矢量式r=ro + t*s,(t∈R) ,ro=OPo
那么点P1到L的距离是
d(P1,L)=│P0P1×s│/│s│

2.设s={m,n,l},P0(x0,y0,z0),P1(x1,y1,z1)
空间直线L的方程是坐标式
(x-x0)/m =(y-y0)/n =(z-z0)/l
d(P1,L)= √[X^2+Y^2+Z^2]/√[m^2+n^2+l^2]

X,Y,Z是二阶行列式
X=
│y1-y0 z1-z0│
│..m.....n..│

Y=
│z1-z0 x1-x0│
│..n.....l..│

Z=
│x1-x0 y1-y0│
│..l.....m..│

3.一点P(a1,b1,c1) 一直线过两点 A(x1,y1,z1)B(x2,y2,z2)
求点P到AB距离

方向数:m=x2-x1 ,n=y2-y1, l=z2-z1
X=
│b1-y1 c1-z1│
│x2-x1 y2-y1│

Y=
│c1-z1 a1-x1│
│y2-y1 z2-z1│

Z=
│a1-x1 b1-y1│
│z2-z1 x2-x1│

d(P,AB)=√[X^2+Y^2+Z^2]/√[(x2-x1)^2+(y2-y1)^2+(z2-z1)^2]

尚理说的对,记公式太烦,容易记错。

其实根本没有必要用公式计算, 设Q是直线AB上的一点,
坐标是x=x1+k*(x2-x1)), y=y1+k*(y2-y1), z=z1+k*(z2-z1),
根据 PQ⊥AB,数量积 PQ*AB=0,计算出参数 k,
那么此时的│PQ│就是要求的距离.

好吧,过程也全部给你搞来。
采纳啊!!!!!!!!!!!!!!!!!!!!!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-04-26
P(x1,y1,z1)
P1(x2,y2,z2)
P2(x3,y3,z3)
设P到P1P2的距离为d
S△PP1P2=1/2*|PP1×PP2|
S△PP1P2=1/2*|P1P2|*d
所以d=|PP1×PP2|/|P1P2|
PP1=(x2-x1,y2-y1,z2-z1)
PP2=(x3-x1,y3-y1,z3-z1)
PP1×PP2=
| i j k |
| x2-x1 y2-y1 z2-z1 |
| x3-x1 y3-y1 z3-z2 |
=((y2-y1)(z3-z2)-(z2-z1)(y3-y1),(z2-z1)(x3-x1)-(x2-x1)(z3-z2),(x2-x1)(y3-y1)-(y2-y1)(x3-x1))
所以|PP1×PP2|=√(((y2-y1)(z3-z2)-(z2-z1)(y3-y1))²+((z2-z1)(x3-x1)-(x2-x1)(z3-z2))²+((x2-x1)(y3-y1)-(y2-y1)(x3-x1))²)
|P1P2|=√((x3-x2)²+(y3-y2)²+(z3-z2)²)
所以d=√(((y2-y1)(z3-z2)-(z2-z1)(y3-y1))²+((z2-z1)(x3-x1)-(x2-x1)(z3-z2))²+((x2-x1)(y3-y1)-(y2-y1)(x3-x1))²)/√((x3-x2)²+(y3-y2)²+(z3-z2)²)本回答被提问者采纳
第2个回答  2010-04-25
这题目就是考你的耐心,没啥简便的方法吧,lz用心算吧
已知两点,可以求出直线方程,然后用点到直接求解
或者,你先求出p1p2斜率,然后求出过p与p1p2垂直的直线, 完了求交点,用两点距离公式算....