




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章图形变换 计算机图形学的基础理论知识 第一节矩阵及其运算一 矩阵的基本概念 说明 1 m n个数排成行列的数表叫做m n阶矩阵 当m n时 又叫做n阶方阵 矩阵 是一组元素所排成的数表 例如 2 矩阵与行列式是两个不同的概念 n阶行列式是一个数 而n阶矩阵不是一个数 而是n个数排列的数表 二 矩阵的运算1 加法和减法 运算条件 两个矩阵的行和列都相同 运算原则 每对对应元素实行加法或减法 如 二 矩阵的运算2 乘法 运算规则 矩阵A中的第i行元素与矩阵B中的第j列对应元素乘积之和就是矩阵C中第i行第j列元素 运算条件 第一个矩阵的列数必须等于第二个矩阵的行数 乘法方可进行 矩阵乘法实例 一个m n阶矩阵乘以一个n q阶矩阵产生一个m q阶矩阵 矩阵乘法规则 适应结合律 A BC AB C适应分配律 A B C AB AC A B C AC BC交换律不成立 AB BA在进行级联 矩阵连乘 时 特别注意矩阵的前后次序 第二节二维图形的矩阵变换 二维空间 平面 的一个点P 可以用它的坐标 X Y 来表示 也可以用一个的矩阵 XY 来表示 点由某一位置 X Y 变换到另一个位置 如右图所示 可以利用矩阵乘法来实现 即 变换矩阵 矩阵 称为变换矩阵 变换后 点的新坐标取决于A B C D的值 二维图形变换程序 画一个的矩形 键入不同的A B C D值 观看其对图形的影响 头文件 intmain void requestautodetection intgdriver DETECT gmode errorcode inti xmax ymax floatA B C D floatpx 10 py 10 x 10 y 10 initializegraphicsandlocalvariables initgraph include include include include 主程序入口 变量 数组定义 绘图初始化 二维图形变换程序 续 printf A B C D scanf f f f f readresultofinitialization errorcode graphresult anerroroccurred if errorcode grOk printf Graphicserror s n grapherrormsg errorcode printf Pressanykeytohalt getch exit 1 对绘图初始化的结果进行判别 如有错误 则退出 读入A B C D 对矩形的四个角点进行赋值 二维图形变换程序 续 i 1 do x i A px i C py i y i B px i D py i x i 1 A px i 1 C py i 1 y i 1 B px i 1 D py i 1 获得屏幕的最大象素点的x y的坐标 画出屏幕的四边框 对前面赋值的矩形进行图形变换 setcolor getmaxcolor xmax getmaxx ymax getmaxy drawadiagonalline line 0 0 0 ymax line 0 ymax xmax ymax line xmax ymax xmax 0 line xmax 0 0 0 二维图形变换程序 续 设置绘图的颜色 cleanup getch closegraph return0 绘原矩形 绘变换后的矩形 关闭绘图方式 setcolor 5 line 160 px i 300 py i 160 px i 1 300 py i 1 setcolor 11 line 160 x i 300 y i 160 x i 1 300 y i 1 i while i 5 一 恒等变换 若想使图形按原位置 原大小显示出来 则应A D 1 B C 0 变换矩阵为 显然 新坐标与旧坐标相等 点的位置在变化前后没发生变动 所以此时变换矩阵T称为恒等变换矩阵 这种变换即为恒等变换 二 比例变换 要对一个图形进行放大或缩小 可通过比例变换来实现 使B C 0 则比例变换矩阵为 A为X方向的比例因子 D为Y方向的比例因子 例 A 1 B 0 C 0 D 2所显示的图形 三 反射变换 变换前后的图形对称于X轴或Y轴 或对称于某一特定的直线 如45 线 45 线 或某一特定的点 如原点 1 对Y轴的反射 变换矩形为 右图为A 1 B 0 C 0 D 1时所显示的对Y轴反射的图形 2 对X轴的反射 变换矩形为 右图为A 1 B 0 C 0 D 1时所显示的对X轴反射的图形 3 对45 轴的反射 变换矩形为 右图为A 0 B 1 C 1 D 0时所显示的对45 线反射的图形 4 对 45 轴的反射 变换矩形为 右图为A 0 B 1 C 1 D 0时所显示的对 45 线反射的图形 5 对原点的反射 变换矩形为 变换结果是对原点的反射 右图是A 1 B 0 C 0 D 1时所显示的图形 四 错切变换1 沿X方向的错切 变换矩形为 错切结果如右图所示 在图中 CY 沿X正负方向的错切 若C 0 图形沿X轴正方向错切 如图13 10所示 若C 0 图形沿X轴负方向错切 如图13 11所示 2 沿Y方向的错切 变换矩形为 若B 0 图形沿Y轴正方向错切 如图13 12所示 若B 0 图形沿Y轴负方向错切 如图13 13所示 五 旋转变换 平面图形的旋转 是指图形绕坐标原点旋转一个 角度 此时变换矩形为 注意 这个旋转矩阵是特指图形绕原点 0 0 旋转的变换矩阵 并且规定逆时针方向旋转时 旋转角 取正值 反之 按顺时针方向旋转时 旋转角 取负值 旋转变换实例 将程序稍作修改 用ZJ表示旋转角 将数据输入改为 printf ZJ scanf f A COS ZJ B SIN ZJ C B D A输入旋转角ZJ 即可按要求画出图形了 六 平移变换及齐次坐标 平移变换是二维变换中最基本的一种 但是 一般的矩阵不能完成平移变换 原因是平移为 一般矩阵的任何积都不能找到上述关系 在此引入一个附加坐标 使 平移变换矩阵 平移变换矩阵为 M为沿X方向的平移量 N为沿Y方向的平移量 二维图形的变换矩阵 前面所讲的几种变换 都可以表示为 用3 3阶矩阵 表示包括平移在内的各种线性变换了 齐次坐标 用三维向量表示二维向量或者说用n 1维向量表示一个n维向量的方法 称为齐次坐标表示法 一般地把称为点的齐次坐标 其中H为任意实数 当H 1时 就是点的正常化 或标准化 的齐次坐标 例 齐次坐标 正常化齐次坐标为 它表示二维空间点 点的齐次坐标并不是唯一的 例如 2 5 的齐次坐标可认为是 4 10 2 20 50 10 2 1 5 25 1 05 或者 2 5 1 等等 2 5 1 就是点的正常化齐次坐标 二维变换图形的性质 前面所讲比例 反射 错切 旋转 平移等变换都具有仿射变换的性质 即变换前后的图形之间仍保持 1 从属性 变换前一直线上的每一点在变换后的直线上都有一确定的对应点 2 同属性 变换前的点或直线 变换后仍是一个点或直线 即点对应点 直线对应直线 3 平行性 两平行直线经过变换后仍保持平行 4 定比性 变换前两线段之比等于变换后对应之比 第三节组合变换 很多变换是不能用上述的某个矩阵进行单一的变换来实现的 而要用几个变换组合起来方可完成 这种变换称为组合变换或级联变换 一 平面图形绕任意点旋转的变换 1 将旋转中心点P m n 移到原点 原图形随之一起平移 这可用一个平移矩阵来实现 平移量X方向为 m Y方向为 n 一般情况下图形绕平面上任意点P m n 的旋转 可按下述步骤进行 2 绕原点旋转所需要的转角 这用一个旋转矩阵来实现 3 将旋转后的图形再移回原位置 这用一个平移矩阵来实现 平移量为m n 三个变换矩阵T1 T2 T3的级联 就是平面图形绕任意点旋转的变换矩阵T 平面图形绕任意点旋转的变换 平面图形绕任意点旋转的变换矩阵T 这样只要知道了旋转中心的坐标 m n 和旋转角 即可进行图形变换 平面图形绕任意点旋转的变换实例 例使三角形A 6 4 B 9 4 C 6 6 绕点P 5 3 旋转60 求变换后的图形 二 平面图形以任意点为中心的比例变换 我们前面所讲的比例变换 是专指以原点为中心的比例变换 如果以任意点为中心进行比例变换 图形不仅大小或形状发生了变化 而且其位置也随比例发生了变化 以任意点P m n 为中心的比例变换则较好地解决了定位问题 以任意点为中心的比例组合变换步骤 1 将比例中心P m n 即变换后的不动点 平移到原点 图形随之一同平移 这可以用一个平移矩阵来实现 平移量X方向为 m Y方向为 n 2 将平移后的图形按要求的比例进行缩放变换
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030全球及中国客户分析应用程序行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2025-2030全球及中国吸入性一氧化氮行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 智慧化公共服务与招商创新-全面剖析
- 2025-2030全球及中国便携式汽车Wi-Fi路由器行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2025-2030全球及中国互联汽车M2M连接和服务行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 2025-2030光电继电器市场前景分析及投资策略与风险管理研究报告
- 2025年烘焙师职业资格考试真题卷:糕点烘焙原料采购与供应链优化试题
- 水肿心理康复效果评估-全面剖析
- 2025年辅导员考试题库:学生职业生涯规划指导职业生涯规划教育与就业指导技巧试题
- 2025-2030休闲女装行业市场发展分析及发展趋势与规划建议研究报告
- 少儿美术课件- 9-12岁 素描班《感知力素描》
- 《强化学习理论与应用》深度强化学习概述
- zippo稀有品系列图鉴
- 优艺国际环保科技(新乡)有限公司新乡市医疗废物集中处理中心迁建扩能项目环境影响报告
- 经验萃取实战技术课件
- 医学女性盆腔肿瘤的影像学表现和鉴别专题课件
- 南汇区供排水一体化整合研究的任务书
- 23CG60 预制桩桩顶机械连接(螺丝紧固式)
- 小学道德与法治-【课堂实录】生活中处处有规则教学设计学情分析教材分析课后反思
- 军营相亲活动策划方案
- Python语言基础与应用学习通课后章节答案期末考试题库2023年
评论
0/150
提交评论