glm 的 orientedAngle() 函数中的 "reference vector" 是什么?

What is the "reference vector" in glm's orientedAngle() function?

https://glm.g-truc.net/0.9.4/api/a00210.html

我试图找到 3d 中两个向量之间的符号角 space。

我似乎无法从数学上找到此函数中的 "reference vector" 是什么。因此,我不知道如何使用该功能。谢谢!

在 3D 中,两个向量之间没有符号角这样的概念。如果没有任何选定的方向,您只能获得 0..Pi 范围内的角度(例如,使用标量积,它不随参数顺序变化)。

假设您在玻璃上绘制了两个向量 A 和 B(从一点开始)sheet。从玻璃的一侧看 - 你会看到你需要将 A 旋转 45 度到 B。从另一侧看 - 你会看到你需要将 A 旋转 -45 度到 B.

如果你有一些参考向量(轴),它有助于定义包含两个向量的平面的方向(正法线方向),你也可以确定角度符号。

例如,向量序列 A、B、Ref 可能形成 'right' 方向的三元组(想象右手的第 1、第 2、第 3 个拇指),所以您应该将矢量 A 转向正方向,使其与矢量 B 重合,绕轴 Ref (如果 Ref 垂直 AB).

或者这个序列可能是'left'三元组,所以你应该将向量A转向负方向,使其与向量B[=重合32=].

(抱歉我的英语不好)