有人可以向我解释如何在Matlab中使用叉积函数吗?
例如,下面的图像在立方体上有6个固定点,如何找到立方体的另外两个点?
替代文字http://img24.imageshack.us/img24/6479/drawcube01.png
回答:
不使用Matlab知道叉积函数的含义是件好事。
如果您有两个向量
A = a x
i + ay
j + az
k和
B = bx
i + by
j + bz
k ,则叉积定义为向量C,如下所示:
C =(ay
bz- az)
i- (ax
bz-bx az)
j +(ax
by-bx ay)
k
将
A旋转为
B时,可以将
C可视化为与
A和
B垂直,并沿右螺钉方向。
另一种写法是:
C = ab sin(θ)
n ,其中a是
A的大小,b是
B的大小,n是单位法向矢量。
在您的情况下,A和B的大小是魔方的边的长度。您想要的点是向量
C的末端。
其他详细信息:
在您的情况下,向量
A从最低点一直延伸到右侧的角落;向量
B从该共同的最低点开始,到左侧的角落。
将A跨入
B,以得到垂直于底面朝向未知角点延伸的向量。使其成为单位向量。将单位向量乘以立方体侧面的长度。将公共底点添加到此向量的分量中,便可以得到未知角的绝对坐标。重复其他三点,就可以完成。
更多&回答...