【问题标题】:Perp dot product and intersection point between 2 vectorsPerp点积和2个向量之间的交点
【发布时间】:2012-02-27 00:49:35
【问题描述】:

我一直在阅读有关向量交集的博客。在这个博客中,我发现了这样的内容:

v3={vx:v2.p0.x-v1.p0.x, vy:v2.p0.y-v1.p0.y};
var t=perP(v3, v2)/perP(v1, v2);
ip={};
ip.x=v1.p0.x+v1.vx*t;
ip.y=v1.p0.y+v1.vy*t;

function perP(va, vb)
{
    pp = va.vx*vb.vy - va.vy*vb.vx;
    return pp;
}

这就是他们计算向量 v2 与 v1 的交集的方式。我不明白的部分是 t 计算(即 v2 上作为交点的分数)。

谁能解释为什么 perp 产品之间的划分是 t ?一直在阅读一些其他信息等...但无法弄清楚。

P.D:完整的博文是:http://www.tonypa.pri.ee/vectors/tut05.html

提前致谢。

【问题讨论】:

    标签: math vector


    【解决方案1】:

    v1 和 v2 的乘积等于这些向量形成的平行四边形的面积。 v2 和 v3 的产品也是如此。两个平行四边形具有共同的底 (v2),但高度不同。高度 1 = v1.DeltaY 和高度 2 = v3.DeltaY = v1.DeltaY * t。所以面积比(和产品比)是t

    【讨论】:

    • 感谢 MBo 的回答,但是,我上面提到的教程谈到了 v1 normal 和 v2 的点积,以及 v3 normal 和 v2 的点积,这就是他所说的 Perp 点积。也许我没有完全关注你,但仍然不明白你的答案和这家伙计算 t 的方式之间的关系。
    • perp dot product 是 cross product 的一个组成部分,或者 2D-case 的 cross product。在此处查看“矩阵符号”和“几何意义”部分:en.wikipedia.org/wiki/Cross_product
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-04
    • 2019-11-08
    • 2013-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多