游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3368|回复: 4

请教:绕任意坐标轴旋转一个向量,有什么简便的方法

[复制链接]

9

主题

688

帖子

688

积分

高级会员

Rank: 4

积分
688
发表于 2006-11-28 22:46:00 | 显示全部楼层 |阅读模式
例如,旋转前的向量为(x0, y0, z0),旋转的轴为向量(A, B, C),设旋转的角度为theta,如何计算旋转后的向量(x1, y1, z1)?

有没有什么方便的方法? [em5]
sf_20061128224531.png

35

主题

1735

帖子

1739

积分

金牌会员

Rank: 6Rank: 6

积分
1739
QQ
发表于 2006-11-28 23:15:00 | 显示全部楼层

Re:请教:绕任意坐标轴旋转一个向量,有什么简便的方法

如果使用的是DX,可以使用D3DXMatrixRotationAxis函数即可。OPENGL就俺不晓得了,要是没有提供相关API的话也可以自己计算一个绕任意轴旋转的矩阵来用,这个不是很难,计算机图形学的书上基本都有。

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2006-11-29 10:23:00 | 显示全部楼层

Re:请教:绕任意坐标轴旋转一个向量,有什么简便的方法

使用 Quaternion 。

3

主题

21

帖子

23

积分

注册会员

Rank: 2

积分
23
发表于 2006-11-29 11:21:00 | 显示全部楼层

Re:请教:绕任意坐标轴旋转一个向量,有什么简便的方法

嗯, 的确四元数最方便, 不喜欢的话(就象我)可以用D3DXMatrixRotationQuaternion转换为矩阵来用~~

9

主题

688

帖子

688

积分

高级会员

Rank: 4

积分
688
 楼主| 发表于 2006-11-30 22:15:00 | 显示全部楼层

Re:请教:绕任意坐标轴旋转一个向量,有什么简便的方法

Thanks
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-25 23:21

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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