召 无咬尸息瓦 , 臃戴蕊磷瓢
三维空间坐标的旋转算法
口释文 风
在
进行三维 空间 图形的显示以 及动画 处理 时 ,
经常需要对图形进行旋转处理 。 旋转可分为
绕坐标轴的旋转以及绕任意轴的旋转
。
三维
空 间 中的坐标点 心 , 经过旋转后其坐标
值变换为 ‘ , ‘ , ‘ 。 本文讨论 ‘ , ‘ , , 与
, , 之 间的坐标变换关系 。
坐标的变换与二维坐标系里的旋转变换相同 。
绕 轴的旋转
。
其变换关系为
, 一 幼 , 目喊
‘
艺一 翻叨 十 的喊
绕 轴的旋转 。 其变换关系为
一
、
绕坐标轴旋转
, 一 叭一 呱
, 一 氏
图
示 某一坐标点 , , 绕各坐
标轴旋转的方向
, 以 及绕
, , 轴的旋转角
度 二 , , ,
之 ,
间时绕 轴
、 轴 、 轴的旋转
。
其旋转
角 度分别 为 , ,
, 氏 , 其变换关系可以通过上述
叹种旋转变换关 系推出 , 即
图
绕 轴的旋转
。 一坐标点 , ,
绕 轴旋转 角度后变 为 , ‘ , ‘ 。 其变
换关 系 为
, 一
‘ 一 幼 , 一 ‘
‘ 一
这里 , ’一 是 显而 易 见的 , 坐标 与
’一 叭 幼之
一 旧 , 喊 阔 一 “闭 目川人
乌 氏 喊 叨声 喊
‘ 一 一 十 旧 、 闭 , 团之 以如一忱即王
匆
一 旧 口, 叨
’ 。 一氏 动、 之加叨 以幻 ,
需要指出 的是 在上述同 时绕 轴
、
轴 、
轴旋转情况下 , 在程序实现 上可以选泽两种
编程方法 。 一种是直接使用上述 推出的变换
关 系表达式
。
其 语言实现的程序如下
程序
井 能 蕊地 日
、
目 , , , , , , ,
月。 , , , 八叼地 。 ‘
月 , , 为 苦 以 以万 名 苦
月 , , , , , , ‘ 以万 如曰 ‘
月 , , 目 , , ,
一 城 日
一 一 即
瓜 一
苦
爷 一 关 。。‘洲一 餐 翻
芳 二 书 翻 苦
电脑编程技 巧 与维护 · 年第 期
召 天火尸息兀夕 巍麟粼黔
”
’‘ ‘ 苦
补 伪 丫十 香 如 多
留 书
, 一 , 翻 爷 以褚丫
” 务 井 ‘ 资 ,
专 。国业 份 曲它 ,
份 份 曰叹 番 “扛 多
井 一
川妇的
另 一种是使用上述 、 、 三种变换关系顺
序合成 , 即
程序清单
丫 目 甘 招 , , , , , , , ,
掀拍 , , , 内侧“ 次期 ,
佣。以 , 、乙 开 叮 训万由 公
加川 , , , , ‘ 刀 ‘ 翻 以 爪翻怕龙 ‘
《
椒劝龙川皿 , 抽 , 曲口 , 。翔龙 , 招翔 , ‘。‘之多
曲议 。的 , 以洲蕊二《兀
幽 自 丫 ‘。 ,
的 翻 皿 挤以龙之一 。‘ 肚 ‘
, ‘ 茸 , ” 甘 。创业一泊吹 铃 曲甲 ‘ 曲让
一 幻旧 件 它
, 翻呷 ‘ 。‘之 翻叭 , 任 创旧犷件 翻尼
苦
,
餐 。。 苦 们 十咖 斧 咖 井 以招
苦 苦 。旧之
谷 骊 荟 破一咖 赞 斧 旧
爷 二 签 一 务 如
长
十 苦 旧 苦 旧
奴万
, , , , 如图 所示 。 其中 为坐标点 , , 绕该轴
的旋转角度 。 下面是 ‘ , , , ’ 和 , , 二 的变换关
系
‘ 吐 一 以刃 叨叨 」 一 。 飞‘
一加礴 一踌目 刃 , 为 〔“ 印曰 巧山司 知
犷 卜 。 〔 ‘ 一 以力 ‘碗 幻 【衅
、加刃 印动 〕 卜 。 、 刃 一飞幻胡 〕 。
了 一勒 〔刀吮‘ 一 口刃 一丐‘ 」 〔巧‘
一 。刃 十 瓦 因 与 城 侧闭 十 印曰 」十 勒
当 , , 。 , , 时 , 该轴通过原点 。 绕任
意轴旋转的变换关系表达式 比较长 , 而且需要浮点敬
表示 , 所以在程序编写时 , 最好在计算表达式之前 , 先
把 日和 算出 , 以提高程序的执行速度 。
作者地址 辽 宁省本澳冶金专科学校 自控 系计算
机教研室
后者程序运行时间是前者的一半 。 两组程序的运
行结果可以证明这一点
。
所以需要快速坐标变换的场
合下 , 使用变换关系顺序合成方法是有利的 。
二 、 绕任意轴的旋转
设 一个轴通过
, ‘、 。 坐标点 其方 向 余弦 为
上接第 页
改为
一 ‘ ‘ 十
经过以下修改 , 就可以 用菜单生成器建立用 户菜
单了 。
四 、 建立了用户菜单的步骤
①定义三个内存变量 菜单名
、
菜单所在的窗 口 名 、 菜单行号 , 并赋值 。若缺
省 , 则为系统菜单而忽略 、
。
② 如需要 , 定义显示菜单的窗 口 。
③ 利用莱单生成器定义菜单 。
④ 从系统菜单 ” ” 中选择 ” ’’调用
菜单
程序 即 我 们修改 的 程
序 生成菜单命令程序 。
⑤执行菜单命令程序装裁菜单
〕 菜单程序名
这时可用 命令来激活菜单 。
此 方 法 已 在 联 想 微 机 , 习
·
,
【 〕 中文版环境下调试
通过 。
图
作者地址 江 苏省连云港市经济技未开 发 区土地
局
电脑细程技巧与维护 · 年第 期