强制右手统治

时间:2017-01-01 13:40:37

标签: matlab math 3d geometry

以下是我要做的事情:
输入:三个3D {v1,v2,v3}向量,具有任意符号的正交 输出:两组三个3D {v1s,v2s,v3s}矢量,它们是正交的,具有特定符号符合右手规则
假设:v1s将具有任意符号

我的问题集中在如何找到v2s标志,我想强制说:v1s和v2s的签名(!)角度为90度,v2s,v3s之间的签名角度相同。

关于v3s,我打算按以下方式计算: v3s = cross(v1s,v2s)。

如果问题定义不正确,您可以将任意向量定义为常量。

1 个答案:

答案 0 :(得分:1)

是的,你的问题没有明确定义。在2D以上的尺寸中,没有符号角。如果在这些向量所跨越的平面上固定方向,则只能获得两个向量之间的有符号角度,并且通常没有首选方向。

在3D中,固定方向相当于固定两个标准化法线向量中的一个。因此,您可以将未更改的v3v1中的v2定义为v3s = cross(v1s,v2s),也可以修改未更改的v3以定义v1,v2上的方向} plane和compute v2s = cross(v3s,v1s)