游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2044|回复: 3

请教一个 矩阵 问题

[复制链接]

19

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
发表于 2006-9-3 22:03:00 | 显示全部楼层 |阅读模式
我现在有一个最终的变换 矩阵

而我需要的是 其中的  x, y, z 旋转量,有办法吗

急用,感激!
sf_20069322313.jpg

30

主题

357

帖子

388

积分

中级会员

Rank: 3Rank: 3

积分
388
QQ
发表于 2006-9-3 23:16:00 | 显示全部楼层

Re:请教一个 矩阵 问题

这样做有时候似乎不可行。因为事先根本不知道你是先转X 还是先转Y 还是Z,哪个先哪个后是完全不一样的结果,而且还会有死角。除非你知道这个矩阵是按什么顺序做旋转的。
你只能提取四元素,就是任意轴旋转的数据。四元素怎么提取就不知道了,容易健忘。我只能告诉你基本的围绕XYZ轴旋转是怎么做的。

X轴:
mat._22 = cosf(fRads);
mat._23 = sinf(fRads);
mat._32 = -sinf(fRads);
mat._33 = cosf(fRads);

Y轴:
mat._11 = cosf(fRads);
mat._13 = -sinf(fRads);
mat._31 = sinf(fRads);
mat._33 = cosf(fRads);

Z轴:
mat._11 = cosf(fRads);
mat._12 = sinf(fRads);
mat._21 = -sinf(fRads);
mat._22 = cosf(fRads);

fRads是旋转角度  180度 = 3.1415926.....   注意负号 -

19

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
 楼主| 发表于 2006-9-4 10:34:00 | 显示全部楼层

Re:请教一个 矩阵 问题

感谢 xikema

是了提取四元素我找不到怎么做,你可能记得告诉我呢

我只要从矩阵中提取旋转四元素就足够了,能做到吗

18

主题

579

帖子

583

积分

高级会员

Rank: 4

积分
583
发表于 2006-9-9 22:29:00 | 显示全部楼层

Re:请教一个 矩阵 问题

下载个Ogre源代码。里面有。。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 08:49

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表