有人可以向我解释如何在matlab中使用交叉产品功能吗?
一个例子,我在立方体上有6个固定点的下图,如何找到立方体的另外两个点? alt text http://img24.imageshack.us/img24/6479/drawcube01.png
答案 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 以获得垂直于底部平面向上朝向未知角点的矢量。使它成为单位矢量。将单位矢量乘以立方体边长。将公共底点添加到此向量的组件,并且您具有未知角的绝对坐标。重复其他三点,你就完成了。