euler-angles相关内容

两个 3d 向量之间的欧拉角

如何找到 2 个 3D 向量之间的 3 个欧拉角?当我有一个向量并且我想获得它的旋转时,通常可以使用此链接:计算旋转以查看 3D 点? 但是互相计算的时候怎么办呢? 解决方案 正如其他人已经指出的那样,您的问题应该修改.我们称您的向量为 a 和 b.我假设 length(a)==length(b) >0 否则我无法回答问题. 计算向量的叉积 v = axb;v 给出了旋转的轴. ..
发布时间:2022-01-14 15:57:22 其他开发

有没有办法从 4x4 矩阵计算 X 和 Y 轴上的 3D 旋转

首先,我根本不是数学专家.请容忍我的数学错误并在必要时纠正我,我很乐意学习. 我有一个立方体,它使用带有变换的 css 动画进行旋转:matrix3d(4x4).我还可以手动旋转立方体,将用户操作转换为相同的 matrix3d 转换. 我想要的是一个带有 css 的旋转立方体,当用户停止交互时,从用户离开的地方开始.这是我通过获取多维数据集的变换 matrix3d 值并使用乘法动态设置 ..
发布时间:2021-12-17 14:46:39 前端开发

来回旋转游戏对象

我想在 Y 轴上在 90,-90 之间来回旋转对象.问题是我可以将编辑器中的对象设置为 -90,但是当我运行项目时 -90 突然变为 270.无论如何这里是我正在使用的代码: void Update(){如果(transform.eulerAngles.y >= 270){transform.Rotate(Vector3.up * speed * Time.deltaTime);}否则如果(tr ..
发布时间:2021-12-11 17:12:44 C#/.NET

3D相对角度总和计算

我有一个四元数形式的带有旋转 r1 的 3D 对象.我用局部欧拉角旋转它: transform.Rotate(new Vector3(0f, 15f, 0f), relativeTo: Space.Self);//对transform.Rotate(new Vector3(-10f, -5f, 0f), relativeTo: Space.Self);//左上transform.Rotate(n ..
发布时间:2021-12-11 16:47:18 C#/.NET

给定一组欧拉角,(俯仰、偏航、滚转)如何找到描述相同 3D 方向的替代集?

我有一个很好的欧拉四元数方程,它有时会返回一组非直观的角度. 例如: 音高:129 偏航:-85 滚动:126 我想以编程方式找到交替旋转,使俯仰和滚转在 -90 到 90 之间.偏航可以是 0 到 360. [编辑] 俯仰被限制在 -90 到 +90 并且滚动被限制在 -180 到 +180. 解决方案 基本上,您希望防止方向超出极点.这样做很容易: 首 ..
发布时间:2021-11-25 04:45:47 C#

3D 数学:根据 Look 和 Up 正交向量计算倾斜(滚动)角度

我希望这是问这个问题的正确位置,即 与此相同,但表示为纯数学而不是图形(至少我希望我将问题正确地转换为数学). 考虑: 两个正交的向量:Up (ux, uy, uz) 和 Look (lx, ly, lz) 垂直于Look的平面P(因此包括Up) Y1 是 Y(垂直轴)沿 Look 到 P 的投影 问题:Y1 和 Up 之间的夹角是多少? 正如数学家会同意的那样,这是一 ..
发布时间:2021-11-25 03:48:45 C#

将 2 个 3D 点转换为方向向量到欧拉角

这基本上是我的问题.也可能我对欧拉角不够熟悉,我试图做的事情是不可能的. 我在 3d 空间中有 2 个点. p1 (1,2,3) p2 (4,5,6) 为了获得这两点的单位向量,我基本上是这样做的. var productX = (position.X2 - position.X1);var productY = (position.Y2 - position.Y1);va ..
发布时间:2021-11-25 03:11:13 C#

将偏航、俯仰和滚转转换为世界坐标中的 x,y,z 向量

我正在 OpenGL (java LWGJL) 中处理一些简单的 3d 图形,并且我试图弄清楚如何将偏航、俯仰和滚转转换为我的运动向量的 x、y 和 z 分量.我知道如何只用俯仰和偏航来做到这一点(如此处所述),但我没有找到任何解释如何将滚动整合到这个公式中. 我知道在 3d 空间中定义向量只需要偏航和俯仰,但在这种情况下我还需要滚转.在基本 WASD 配置中,我将键绑定到相对于相机的不同运 ..
发布时间:2021-11-25 02:52:48 C#

欧拉角与四元数 - 由内部存储和向用户呈现之间的紧张引起的问题?

四元数可以说是在内部表示对象旋转的合适选择.它们可以简单有效地插入并明确表示单个方向. 但是,在用户界面中呈现四元数通常是不合适的 - 用户通常更熟悉欧拉角,并且它们的值更直观和可预测. 欧拉角在代码级别很复杂——它们需要存储一个旋转顺序,并且使用这个顺序和相关的角度组成一个实际的方向(矩阵或四元数)是很麻烦的,至少可以说. 使用四元数表示最方便地执行可靠插值 - 那么这是否意味 ..
发布时间:2021-11-25 01:39:51 C#

欧拉到矩阵和矩阵到欧拉的转换

我正在尝试使用 .NET/C# 将根据欧拉角描述的 3D 旋转转换为矩阵,然后返回.我的约定是: 左手系统(x 右,y 上,z 向前) 旋转顺序:绕y,绕x俯仰,绕z倾斜 使用左手规则(拇指指向+无穷大)为正旋转 我的试用期是: 欧拉转矩阵(为了简化,我删除了 x,y,z 平移部分) Matrix3D 矩阵 = new Matrix3D() {M11 = cosH * co ..
发布时间:2021-11-25 01:25:59 C#/.NET

两个 3d 矢量之间的欧拉角

如何找到 2 个 3D 向量之间的 3 个欧拉角?当我有一个 Vector 并且想要获取它的旋转时,通常可以使用此链接:计算旋转以查看 3D 点? 但是在相互计算它们时我该怎么做? 解决方案 正如其他人已经指出的,您的问题应该修改.让我们称您的向量为 a 和 b.我假设 length(a)==length(b) >0 否则我无法回答问题. 计算向量的叉积v = axb;v 给出 ..
发布时间:2021-11-25 01:24:31 C#

计算旋转以查看 3D 点?

我需要计算 3D 对象面对任意 3D 点的 2 个角度(偏航角和俯仰角).这些旋转被称为“欧拉"旋转,因为在第一次旋转之后(假设 Z,基于下图)Y 轴也随着对象旋转. 这是我正在使用的代码,但它不能完全工作.当在地平面 (Y = 0) 上时,对象正确旋转以面向该点,但是一旦我在 Y 中向上移动该点,旋转看起来就不正确. //x, y, z 代表-[1]和[1]之间的一个小数值//我需要旋转 ..
发布时间:2021-11-25 00:51:34 C#

是否有将四元数旋转转换为欧拉角旋转的算法?

是否有将旋转的四元数表示转换为欧拉角表示的现有算法?欧拉表示的旋转顺序是已知的,可以是六种排列中的任何一种(即 xyz、xzy、yxz、yzx、zxy、zyx).我见过固定旋转顺序的算法(通常是 NASA 航向、倾斜、滚动约定),但没有看到用于任意旋转顺序的算法. 此外,由于单个方向有多个欧拉角表示,因此这个结果将是模棱两可的.这是可以接受的(因为方向仍然有效,它可能不是用户期望看到的方向) ..

Three.js - 从 X、Y 和 Z 轴的标准化方向设置对象的旋转

从模型文件对象定义中,新对象的位置由 location(空间中的一个点)和 X 轴、Y 轴和 Z 轴的归一化方向给出轴. 我如何将其转换为 THREE.Euler 以便我可以在空间中正确旋转我的对象. 所以轴是关闭类型THREE.Vector3.如果新对象与 world 对齐,则值将是: xAxis = new THREE.Vector3( 1, 0, 0 );yAxis = new ..
发布时间:2021-07-10 19:40:54 其他开发

使用四元数旋转 3D 欧拉点以避免万向节锁定

首先,我已经做了很多谷歌搜索并检查了其他关于此的 stackoverflow 帖子,但无法获得有效回复或工作代码片段.数学不是我的强项. 我需要一个例程来获取相机点(CX、CY、CZ)并将其围绕观察点(LX、LY、LZ)旋转三个旋转角度(RX、RY、RZ).在某些我需要避免的情况下,使用欧拉旋转会导致万向节锁定.所以我听说了使用四元数. 我发现这可以将旋转转换为四元数http://ww ..
发布时间:2021-06-30 19:17:43 其他开发