问题标签 [rotational-matrices]
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.
r - 做右手转
我有一个问题,我有一堆长度并想从原点开始(假装我面对 y 轴的正端),我向右并沿 x 轴正向移动距离 length_i . 这时候我再右转,走length_i的距离,重复n次。我可以做到这一点,但我认为有一种更有效的方法可以做到这一点,而且我缺乏数学背景:
这给出了预期的结果:
这是一个情节:
这似乎缓慢而笨拙。我猜有比我在for
循环中做的项目更好的方法来做到这一点。有什么更有效的方式来保持程序化权利?
java - Java // 旋转矩阵 // 3D [ x,y,z ] // 关于原点的点;
简介 我一直在研究这个主题一段时间,但并没有完全掌握它。我查看了 stackoverflow 以及其他在线资源作为示例,但找不到相当相似的问题可供参考。任何帮助将不胜感激。
为了减少重复的数量,如果已经回答了此类问题,请通知我,以便我删除此问题;
目标:使用旋转矩阵围绕原点旋转 3D 空间中的点 [ x,y,z ];
问题说明:对上述主题的理解程度不足。实施的不确定性;
参考: http ://en.wikipedia.org/wiki/Rotation_matrix
代码结构:
java - Java // 数组 // 乘法 // For-loop;
Objective:使用旋转矩阵产生旋转;
问题定义:输出与预期不符;
预期输出:
产生的输出:
应用代码:
vector - 如何在 Unity 3D 中相对于旋转坐标系计算四元数?
我正在尝试使用四元数旋转矢量,Quaternion.Euler(x,y,z)
并按预期工作,但问题是,旋转是相对于世界坐标系完成的,而我想相对于矢量本身旋转。
所以我想把坐标系作为
所以我的代码是这样的:
但是我需要
所以我需要计算和localEuler
的函数。euler
myVector
我怎样才能做到这一点 ?
谢谢你的帮助 !
我试过 :
它没有用。我想这是点积。
附言
Transform
我认为这有一个s:的内置代码Transform.RotateAround()
,但我需要用 a 来做Vector3
,而不是 a Transform
。
math - 偏航旋转矩阵
我想设置旋转矩阵的偏航,以便使用此代码将对象指向特定位置
这将产生正确的结果,除了旋转是反向的,因此它不会跟随目标点,而是远离目标点旋转。
(使用 -atan2)对象跟随目标,但向右偏移 90 度。rotationZ 实现如下所示:
我正在使用 iOS OpenGL ES 2.0。这里似乎存在根本性错误,第一个版本应该是产生正确结果的版本?所有其他转换似乎都可以正常工作。这里有什么问题?我不知道在哪里寻找错误...
c++ - 如何比较物体之间的相对旋转?
我在 3D 空间中有两个相同类型的对象(使用 OpenGL 来渲染它们)。这些对象存储 xyz 偏移和代表标准 4x4 旋转矩阵的旋转矩阵。
一个精简的例子:
我将 GLUI 用于 UI 控件,这使得以格式存储转换非常简单。
问题: 我需要为一个对象相对于另一个对象定义一个“正确”的方向。例如,如果第一个对象直接面向 z 轴,而第二个对象相同但也围绕 x 轴旋转了大约 45 度,则这将被视为“正确”并且我的函数会执行它们需要做的事情. 当然,这可能会有所不同,可能是相同的 z 但在 x 和 y 上旋转,或者甚至可能围绕每个轴旋转一点。“正确”旋转的定义将存储在对象中以供比较。
理想情况下,我希望做类似的事情:
这可以通过比较两个旋转矩阵来实现吗?我需要转换为四元数并使用它们吗?
这个问题是我发现的最接近我所问的问题,但它的不同足以令人困惑。
graphics - 为什么四元数由 [vector,w] 定义,为什么不由 [point,w] 定义?
四元数旋转定义了 3d 空间中的一个点并围绕该点的轴旋转。我试图理解为什么四元数旋转需要矢量和旋转,为什么不只是空间中的 3d 点和旋转?
例如:在下图中,一只手指向 3d 空间中的一个点,该点可以绕其轴旋转。 http://s29.postimg.org/ih79tirnr/quarternion.jpg
谢谢
javascript - 3D 旋转矩阵导致图像无限重复
基于对 3D 旋转矩阵的一些研究,我制作了这个 jsfiddle,它本身并不能很好地工作,因为你不能在外部视频或图像上使用 'ctx.getImageData()' (但如果你想尝试本地托管的视频源上的相同代码,它应该可以正常工作)。
大多数 3D 魔法发生在两个矩阵乘法中。对于图像的每个点,xyz 坐标乘以函数“rotatePoint”中的旋转矩阵,该函数将点“xyz”从原点“p”沿单位向量“u”的方向转换为旋转轴通过“theta”弧度。
其中“rho”是 sin(theta),“phi”是 cos(theta),theta 是旋转角度。
最后点乘以透视矩阵,在下面的函数中,将点从世界坐标转换为屏幕坐标。
现在,所有这些在大多数情况下都可以正常工作。但无论出于何种原因,3D 旋转都会导致图像沿旋转轴无限重复。这是一个示例屏幕截图:
有人知道为什么会这样吗?
opengl-es - 旋转场景后如何平移相机?
我目前正在尝试在 Android 中可视化 OpenGL ES 2 中的建筑物。当我向左滑动时,整个场景应该向左移动(与右、下和上相同)。现在,当我将模型旋转 90° 时,轴被交换。当我向右滑动时,模型将移动到顶部而不是右侧(与另一个轴相同)。
如何在不影响当前场景旋转的情况下平移相机?当我使用手机时,我总是想将对象移动到我要滑动的方向。当我先调用 translate 时,翻译工作正常,但旋转有一些错误。
更新:我创建了大部分相机类(建议在答案中):
如何将一个向量围绕另一个向量旋转一个角度?
ios - 投影矩阵有什么用?
我一直在尝试分析 Apple 的 pARk(增强现实示例应用程序),在那里我遇到了以下功能,
带有以下参数的方法调用:
我看到这projection matrix
是乘以rotation matrix
(由 motionManager.deviceMotion API 获得)。投影矩阵有什么用?为什么要和旋转矩阵相乘?
为什么结果矩阵必须再次与 PointOfInterest 向量坐标相乘?
感谢这里的任何帮助。
示例代码链接在这里