如何在一条直线上找到一个点的投影

3

如何找到点p=(x, y, z)在直线l(t)= q + vt上的投影? 其中v是单位向量,q是直线上的一点。


1
是什么投影?如果垂直的话,简单的点积 dot(p-q,v) 将给出到 q 的距离。参考 line closest(point p0,axis a0)。有趣的是,我刚刚一分钟前就因为稍微不同的原因发表了类似的评论,指向这个链接。 - Spektre
1个回答

1

enter image description here

从这个草图中,如果我们定义向量q = OQp = OP,则pv上的正交投影是沿着v方向的p的分量。

更明确地说,它是向量((p · v)/v²) · v = (p · v) · v,因为v² = 1。


应该是 |v²|,但是如果我添加它,CommonMark 会破坏粗体格式... 另外,p 应该相对于 q,所以根据 OP 符号约定,应为 ((p-q).v) - Spektre
1
嗨@Spektre,和|v|²是等价的,因为 = v · v = vvcos(0) = |v|²。此外,请注意单位向量v已经隐含了q,因为v = (q' - q)/(|q' - q|²)对于某个q'。向量p已给出,其坐标相对于O(0, 0, 0),而不是相对于q(你为什么要通过p - q来修改它?)。你所说的向量((p - q) · v) · vp - rv上的投影,而不是pv上的投影,这正是OP所询问的。 - Daniel Muñoz Parsapoormoghadam
1
啊,英文的数学符号... 当我看到 的时候,我没有看到它是 (v.v) ... OP 中没有提到 p 已经相对于 q 了,但如果是这种情况的话,你是对的。 - Spektre

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接