问题标签 [euler-angles]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
math - 如何将方向向量转换为欧拉角?
我正在寻找一种将方向矢量(X、Y、Z)转换为欧拉角(航向、俯仰、坡度)的方法。我知道方向向量本身不足以获得坡度角,所以还有另一个所谓的上向量。
有方向向量 (X,Y,Z) 和向上向量 (X,Y,Z) 如何将其转换为欧拉角?
c++ - XYZ 旋转以平移和倾斜
我正在尝试从我的计算机向某个方向控制摇头相机。摄像机仅由平移(540 度)和倾斜(280 度)控制。问题是将欧拉角与这些平移和倾斜度数相匹配。
我有一个方向的 3d 表示,比如说 XY 和 Z 旋转(欧勒角)。
现在我想将我的(物理的!)云台摄像机朝同一个方向移动。但我不知道如何将 xyz 矢量转换为平移倾斜。
c# - 3D相对角度和计算
我有一个以四元数形式旋转r1的 3D 对象。我用局部欧拉角旋转它:
现在我有旋转r2。如果我不知道应用了哪些角度,如何检索局部 Y 旋转总和 15-5+0=10?可能不可能准确地得到那个值(10),但你明白了我的想法。可能我可以在本地r2空间中获得 Y diff 吗?
javascript - 检测 AR 的相机角度
我目前正在为我的 AR 项目使用 Wikiitude。我的图片目标上方有一个 Video Drawable,我想根据相机与目标的角度调整视频。我已经尝试过航向、滚动和倾斜功能。它们工作正常,我想根据摄像机角度调整这些值。我已经问过论坛,但没有关于我的查询的具体答复。我想知道它是否可以实现。谢谢!:)
ios - 了解solvepnp的输出?
我一直在使用solvepnp()
计算旋转和平移矩阵。但是从获得的旋转矩阵计算出的欧拉角给出了非常不稳定的值。为了找到问题,我为我的标记设置了一组 2D 投影点,并保持其他参数solvepnp()
不变。
例如值:
2D点从solvepnp()的输出旋转矩阵计算出
[219.67473, 242.78395;
363.4151, 238.61298;
503.04855, 234.56117;
501.70917, 628.16742;
500.58069, 959.78564;
383.1756, 972.02679;
262.8746, 984.56982;
243.17044, 646.22925]
的欧拉角theta(x)为-26.4877
接下来,我只将第一个点的 x 值(即 219.67473)增加了 0.1,以检查 theta(x) 欧拉角的变化(保持其余点和其他参数不变)并再次运行 solvepnp()。对于那个非常小的变化,我的值从-19度,-18度(对于x坐标= 223.074)然后突然跳到27度一段时间(对于x坐标= 223.174到226.974)然后下降到1.3度(对于 x 坐标 = 227.074)。
我根本无法理解这种行为。有人可以解释一下吗?我从旋转矩阵计算欧拉角使用这个过程。
python - 加速度大于 +/- 1g 的俯仰和横滚
我正在寻找装有三轴加速度计的设备在不静止或不以恒定速度移动时计算它的俯仰和滚动。到目前为止,我看到的大多数应用程序都是用于静止倾斜感应......真的卡在这个上!旨在将它用于我正在研究的python程序。
对于静止的情况,我有以下内容:
javascript - 三个旋转的JS云台锁
看来 Three JS 中的四元数旋转并没有摆脱 Gimbal Lock。
重现步骤:
1)打开三个JS编辑器。2)添加一个圆柱体并将z的值设置为1.57(旋转的中心文本框)。3) 现在尝试更改 y 或 x 弧度的值(旋转的左或右文本框)。
您会看到 x 和 y 都在执行相同的旋转。任何想法如何避免这种情况?
AFAIK Three JS 默认使用四元数,万向节锁定仅在您使用 eular 角时发生。
谢谢!
rotation - 反转 3d 旋转序列
我有一个构造为的转换矩阵
H = Rz * Ry * Rx
。所以旋转是按 xyz 顺序执行的。
现在,给定围绕 x、y 和 z 轴的旋转角度,有没有办法找到旋转角度来执行逆运算,这样
v = Rz * Ry * Rx * v0
v0 = Rz' * Ry' * Rx' * v
只是为了完成。最后,我从变换矩阵中提取了欧拉角,如下所述:
从旋转矩阵计算欧拉角 - Gregory G. Slabaugh
matrix - Three.js - 从 X、Y 和 Z 轴的标准化方向设置对象的旋转
从模型文件对象定义中,新对象的放置由location
(空间中的一个点)和 X 轴、Y 轴和 Z 轴的标准化方向给出。
我怎样才能把它翻译成a THREE.Euler
,这样我就可以在空间中正确旋转我的对象。
所以轴是关闭类型的THREE.Vector3
。如果新对象与world
值对齐,则为:
但是,例如,如果对象的整个局部 UCSMath.PI
围绕 旋转 180 度(或 ),zAxis
它们将如下所示:
所以我需要做这样的事情:
或者从这些轴创建一个旋转矩阵:
我对这些旋转矩阵和欧拉旋转还不是很好......
c++ - 将 3d 欧拉角旋转到基于四元数方向 C++ 的坐标系
我有一个 XYZ 坐标系,我按欧拉角旋转,从 X 开始,然后是 Y,然后是 Z。我需要将此旋转转换为等效的 XYZ 旋转,但相对于另一个坐标系,由四元数指定方向。不幸的是,我被困住了。