|
|
1
91
实现1返回由输入向量的常规三维交叉积产生的向量的大小,将其z值隐式取为0(即,将二维空间视为三维空间中的平面)。三维交叉积将垂直于该平面,因此具有0个x&y分量(因此返回的标量是三维交叉积向量的z值)。 请注意,由三维叉积产生的矢量的大小也等于 地区 两个向量之间的平行四边形,这为实现1提供了另一个目的。此外,该区域有符号,可用于确定从v1到v2的旋转方向是逆时针还是顺时针。还应注意,实现1是从这两个向量构建的2x2矩阵的行列式。 实现2返回一个垂直于输入向量的向量,该向量仍在同一个二维平面中。不是经典意义上的叉积,而是“给我一个垂直向量”意义上的一致性。 注意,三维欧几里得空间在叉积运算下是闭合的——也就是说,两个三维向量的叉积返回另一个三维向量。上述两种二维实现在某种程度上都与之不一致。 希望这有帮助… |
|
|
2
49
简而言之: 这是一个数学黑客的速记法。 详细解释: 在二维空间中,不能用向量做叉积。操作没有在那里定义。 然而,假设二维矢量通过将其Z坐标设置为零扩展到三维,则评估两个矢量的交叉积通常很有趣。这与在xy平面上使用三维矢量相同。 如果以这种方式扩展向量并计算这样一个扩展向量对的叉积,您会注意到只有z分量有一个有意义的值:x和y总是零。 这就是为什么结果的z分量通常只是作为一个标量返回的原因。例如,该标量可用于在二维空间中查找三个点的缠绕。 从纯数学的角度来看,二维空间中的叉积不存在,标量版本是hack,返回二维矢量的二维叉积根本没有意义。 |
|
|
3
12
交叉积的另一个有用特性是,它的大小与两个向量之间的角度的正弦有关:
或
因此,在上面的实现1中,如果
|
|
|
4
4
实施1是 垂直点乘 两个向量中的一个。我所知道的最好的二维图形参考是 Graphics Gems 系列。如果你在做刮痕二维工作,它是 真的? 有这些书很重要。第四卷有一篇文章叫做“perp-dot产品的乐趣”,它有很多用途。
一个主要用途
垂直点乘
是为了得到比例
|
|
|
5
3
我在计算中使用了二维叉积,来找到一个物体在一个力矢量作用下,相对于其质心的任意点上的新的正确旋转。(标量z 1。) |
|
|
6
1
一个有用的二维向量运算是一个返回标量的叉积。我用它来看看多边形中的两条连续边是向左弯曲还是向右弯曲。 从 Chipmunk2D 来源:
|
|
|
Muhammad Umer · 为什么这个随机数猜谜游戏模拟产生5.8 1 年前 |
|
|
Alisa Petrova · 在有向图中更改一对顶点以创建循环 1 年前 |
|
|
D W · Python-将浮点数从2转换为10到100位小数 1 年前 |
|
|
Bartol · 确定python龟图形中的角度 1 年前 |
|
|
randomAlgo · 将弹簧设置为相同长度的成本最低 1 年前 |
|
Fyodor · 在C中使用sin和cos计算数学表达式不正确? 1 年前 |
|
Sergio · python中大量数字的乘法 1 年前 |