- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
三维图形变换实验报告
实验三三维几何变换 班级学号:姓名:牛慧敏 一、实验目的 掌握三维平移、比例、旋转、对称、和错切5种变换矩阵 掌握三维坐标向屏幕二维坐标变换的公式 二、实验环境 基于windows平台下的计算机一台,MicrosoftVC++ 三、实验内容 在屏幕中心绘制三维右手坐标系,y轴向右,z轴向上,x轴向前并与z轴逆时针方向的夹角135度,绘制原始立方体,痛过按钮实现平移、比例、旋转、对称、和错切五种变换。功能说明: (1)设置原始图形为立方体 (2)实现上、下、左、右、前、后、平移变换 (3)实现放大、缩小比例变换 (4)实现绕x轴,y轴和z轴正向的旋转变换 (5)实现关于xoy平面、yoz 四、实验结果 计算机绘图—AutoCADXX ——实验报告 题目:姓名:林永添 学号:XX 班级:12机械班 指导老师:兰自志 日期: 1 武夷学院实验报告 课程名称:_计算机绘图______项目名称:三维图形_姓名:林永添专业:机械班级:3_学号:XX同组成员__无____ 2 3 4 5 三维直线变换实验报告 专业:信息与计算科学学号:班级:0901姓名: 一.实验名称三维直线变换 二.实验目的 1,熟悉VC++的MFC编程环境 2.理解三维直线的生成以及基本裁剪的原理和算法3.掌握基本的图形变换方法以及投影变换4.掌握定义视区窗口变换的方法5.掌握简单绘制窗口已计划比的使用 三.实验内容 三维直线的基本变换:平移、旋转、投影、窗口裁剪、窗口视区变换。 四.实验原理 定义三维线段,当进行基本的变换是将三维转换成二维进行。1.直线的生成:直线的生成算法有:优点是:绘制实数直线效果好,误差小;中点画线算法优点是:只有整数运算,不含乘除法;可用硬件实现。运算,而乘2运算可以用硬件移位实现。件实现。 2.线段平移:将三维将为二维平面上。将两个端点平移到目的端点就可以了。平移过程只需将要平移的线段横向和纵向增加一个平移量。 3.线段的裁剪:直线剪裁算法有两个主要步骤:窗外的直线。然后,对其余直线,逐条与窗框求交点,并将窗外部分删去。在此主要是通过窗口视区进行的裁剪。裁剪一条线段时,先求出端点若code1=0且若code1≠0全舍弃 若上述两条件均不成立,分为二,其中必有一段完全在窗口外, 4.投影变换:投影方向垂直于投影平面的投影称为正平行投影,属于正平行投影。变换到u、v、w坐标系。投影方向不垂直于投影平面的平行投影被称为斜平行投影,导斜平行投影的变换矩阵。透视投影的视线是从视点出发,视线是不平行的。不 DDA code2=0code2≠0 算法的优点是:只做整数加减法和乘Bresenham首先将不需剪裁的直线挑出, P1P2所在的区号P1和P2均在窗口内,全保留code1δcode2≠0可以弃之,x、y、z坐标系的形体投影到算法、算法速度很快,并适于用硬并删去其中在code1和code2P1和P2均在窗口外侧,在交点处把线段一我们通常所说的三视图均现在让我们来推算法、中点画线算法、BresenhamDDA算法的Bresenham2 则说明 且则说明则求出线段与窗口某边的交点,再对另一段重复进行上述处理。 三视图的生成就是把z=0的平面, 平行于投影平面的视线汇聚的一点称为灭点,在坐标轴上的灭点叫做主灭点。主灭点数和投影平面切割坐标轴的数量相对应。按照主灭点的个数,透视投影可分为一点透视、二点透视和三点透视。 下面我们来推导简单的一点透视的投影公式。 投影公式推导图: 5.窗口视区变换: 用户在WC中绘图时,可以选择不同的度量单位,而显示屏上的图形是以屏幕为坐标系,使用整数坐标的象素来度量的。对某种显示器来说,显示数据的范围是固定的。所以,在将窗口的原始图形变换到视区显示时,必须进行此变换。窗口到视区的映射结果,视区中显示的只是窗口内部的那部分图景,窗口外的所有部分都被去掉了。把位于给定区域外的所有图形部分全部删除的过程称为裁剪。窗口变换的过程通常是先对窗口进行裁剪,然后把窗口内部映象到视区中。五.部分代码 #include#include #include#include#defineLEFT1#defineRIGHT2#defineBOTTOM4#defineTOP8 #ifdef_DEBUG #definenewDEBUG_NEW#undefTHIS_FILE staticcharTHIS_FILE[]=__FILE__;#endif /////////////////////
您可能关注的文档
最近下载
- 热分布报告样本.pdf
- 2025年一建一级建造师建筑实务案例分析考点重点知识总结高分笔记.pdf VIP
- 手足口病的诊断与治疗课件.ppt VIP
- 会计法律法规答题答案.doc VIP
- 我国商业银行开展绿色信贷业务存在的问题和对策.docx VIP
- 医院消防安全除患整治攻坚行动工作总结8篇.docx VIP
- 《桃花源记》比较阅读85篇(历年中考语文文言文阅读试题汇编)(含答案与翻译)(截至2020年).doc
- 2025年北京东城区高三一模高考英语试卷试题(含答案详解).docx
- 2024潍坊护理职业学院招聘笔试真题及参考答案详解一套.docx VIP
- 年产300吨2-乙酰呋喃分离工段的工艺设计.docx
文档评论(0)