从一个位置到另一个位置的旋转角度为X/Y/Z。
2009-11-21 20:21:18
收藏:0
阅读:263
评论:2
我正在使用一个名为 Electro 的 3D 引擎,它使用 Lua 编程。这不是一个非常好的 3D 引擎,但我在这方面没有任何选择。
无论如何,我正在尝试将一个平面四边形变换到特定的位置和方向。我知道它应该去哪里(即,我知道每个角落的确切顶点应该在哪里),但我的问题是如何将它旋转到正确的位置。
Electro 不允许您应用变换矩阵。相反,您必须使用内置的缩放、位置(即转换)和旋转函数来转换模型。旋转函数接受一个对象和 3 个角度(以度为单位):
E.set_entity_rotation(entity, xangle, yangle, zangle)
文档没有说明此事,但经过查看 Electro 的源代码,我相信旋转是按 X 旋转-> Y 旋转-> Z 旋转的顺序应用的。
我的问题是:如果我的起始对象是位于原点的 X-Z 平面上的平面四边形,目标位置位于不同的位置和方向,其中目标顶点已知,我该如何使用 Electro 的旋转函数在将其移动到正确位置之前将其旋转到正确的方向?
我已经用我不理解的欧拉角之类的数学思考了两天,但仍然感到困惑。有人可以帮帮我吗?
原文链接 https://stackoverflow.com/questions/1776653
点赞
stackoverflow用户195963
你能详细介绍一下这个问题吗?用这种方式表述很奇怪。你对要达到的最终方向还了解哪些?它是完全随意的还是由用户指定的?你能否利用更多的知识来解决这个问题?有没有其他的Electro API可以帮助你?
如果你真的必须解决这个一般性问题,那就太遗憾了,它很难,而且说明不充分。这里是某个人的代码,可能可以用EuclideanSpace.com。
2009-11-21 22:16:29
评论区的留言会收到邮件通知哦~
推荐文章
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
- 如何编写 Lua 模式将字符串(嵌套数组)转换为真正的数组?
首先进行翻译,将四边形的一个角调整到所需位置,然后依次应用三个旋转变换:
如果你知道四边形的位置,也确切地知道它需要移动到的位置,并且确定没有对四边形进行扭曲以使其适应所需位置,则应该能够使用向量标量积计算出角度。
如果有两个向量,则可以通过取点积来计算它们之间的角度。