在matlab中交叉产品功能

时间:2010-01-03 17:32:39

标签: matlab geometry cube

有人可以向我解释如何在matlab中使用交叉产品功能吗?

一个例子,我在立方体上有6个固定点的下图,如何找到立方体的另外两个点? alt text http://img24.imageshack.us/img24/6479/drawcube01.png

1 个答案:

答案 0 :(得分:2)

很高兴知道跨产品功能在不使用Matlab的情况下意味着什么。

如果你有两个向量 A = ax i + ay j + az k B = bx i + j + bz k ,叉积定义为矢量C,如下所示:

C =(ay bz - by az) i - (ax bz - bx az)< strong> j +(ax by - bx ay) k

旋转时,您可以将 C 显示为与右侧螺丝方向垂直于 A B 进入 B

另一种写作方式是:

C = ab sin(θ) n ,其中a是 A 的大小,b是 B的大小,n是单位法线向量。

在你的情况下,A和B的大小是魔方的边长。您想要的是向量 C 的结尾。

其他细节:

在您的情况下,矢量 A 从底部点到右侧角落;向量 B 从该公共底点开始到左侧角落。将 A 交叉到 B 以获得垂直于底部平面向上朝向未知角点的矢量。使它成为单位矢量。将单位矢量乘以立方体边长。将公共底点添加到此向量的组件,并且您具有未知角的绝对坐标。重复其他三点,你就完成了。