- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《计算机图形学》
课程设计
项目题目:地砖图案设计和铺设效果的模拟设计
专 业:计算机科学与技术
班级学号:
姓 名:
指导教师:李丽亚
2014年6月
项目概述
在计算机高速发展的今天,计算机模拟现实已经逐步成为一次计算机的科技革命,模拟系统的生成和应用也逐步发展和成熟。
在这个模拟系统中对于地砖图案样式的设计我们利用window 7操作系统下Microsoft Visual C++ 6.0中的MFC,采用二维坐标点来进行绘制地砖图案样式,并对其运行、调试。对其整体铺设效果的模拟我们采用平移变换矩阵,任意点的旋转变换矩阵对二维的图形进行整体铺设,使其变成一个完整的图案。我们还在系统中加入了地砖数量的的计算,在MFC中新建了一个Dialog的控制窗口,通过用户给定房间的长宽来计算房间所需地砖总数(地砖样式规格是800mm×800mm)。在设计完这些之后我们为了使铺设效果更佳逼真,加入了三维的坐标点,利用斜等测变换矩阵实现了地砖铺设的立体效果,这样更能增强观赏度。
在工程实际中经常会遇到房屋地板砖的铺设问题,在此类为题中,我们需要考虑地板砖的成本、铺设人工费用以及地板砖破损成本等方面因素,来使成本最小化。通过对求解的结果比较选取成本最低的模型。我们可以将铺设块数、费用及利用率的问题的计算归结到地板砖铺设最低费用的问题中。
比较五种地板砖铺设总费用:
尺寸 800*800 600*600 400*400 300*300 600*300 300*600
所需总费用 42757 49988 60521 60807 58365 57814 我们可以得到,选择铺设规格为800mm*800mm的地板砖所需费用最少,为42757元。 通过上面分析可知800mm*800mm规格的地板砖性价比最高,我们可以优先利用800*800的地板砖进行模拟块数的铺设,在不能铺设完整规格的800mm*800mm的区域外,再用其他规格的地板砖进行切割填补。
项目需求
2.1 几何变换的原理
计算机图形系统的基本功能之一是模拟在空间对物体进行操纵。这种模拟的空间操纵称为变换。可以从两种互补的观点出发来描述物体的变换。第一种是物体本身相对于一个固定不动的坐标系或背景作变换。此观点从数学角度讲就是对物体上的每一个点进行几何变换。第二种观点将物体看成固定不动,而坐标系则相对于物体作变换。这一效果可通过进行坐标变换来取得。
物体的空间操纵有三种基本形式。第一,它们可以在不改变大小和朝向的前提下移动到新的位置。第二,它们可以被放大和缩小。第三,它们可以绕一个点或一条轴旋转。但本论文设计中只应用了后两者几何变换。
在程序设计中,在缩放以及旋转几何变换时首先必须建立modelview的矩阵。它是和来进行建模变换与观察变换的合成变换矩阵。这个建模与观察矩阵的初始化可以通过以下语句完:
glMatrixMode(GL_MODELVIEW);
glLoadIdentity()其中glMatrixMode将建模与观察矩阵设为系统当前的矩阵,所有随后指定的变换都对当前的矩阵生效。
2几何变换—旋转
图3 二维旋转(几何变换)
平面上的旋转是相对于一个点(旋转中心)来进行的,而空间中的旋转则是相对于一条轴来完成。我们将基本的两维旋转定义为绕xy坐标系的原点进行。图表示位于(x,y)的点经过大小为角的两维几何旋转R()后的新位置(x′y′)首先考虑斜边连接原点及(x′y′)的直角三角形并使用三角恒等式来得到:
然后从斜边连接原点及(x,y)的另一个直角三角形得到x=rcos和y=rsin。将此结果代入上式就有:
在二维旋转的基础上,来实现三维旋转。三维旋转有三种基本方式:绕z轴旋转(见图(a)和(a)),绕x轴旋转(见图(b)和(b)),绕y轴旋转(见图(c)和(c))。与正旋转角在二维旋转中意味着反时针旋转的规定一致,正旋转角在三维旋转中意味着旋转方向按右手定则确定(拇指与旋转轴指向相同时,其余四指给出旋转方向)。
图5 三维旋转(几何变换)
绕y轴旋转时(既包括几何变换Ry()也包括与其互补的坐标变换Ry′(-))物体上的点的y坐标保持不变。这就是说每个点可以看成是一个与xz平面平行的平面上旋转——旋转方式与一个在xz平面上的点完全相同。于是我们可以得出三维旋转公式:
旋转变换可以通过调用glRotate*语句来实现:
void glRotate{f d}(TYPE angle, TYPE x, TYPE y, TYPE z)
其中该函数有四个GLfloat或GLdouble类型
您可能关注的文档
- 法律知识学习和考试技巧.doc
- 法律知识竞赛+技巧.doc
- 初中文言文句式和词类活用技巧.doc
- 初中文言文常见虚词技巧.doc
- 初中数学三角形专题复习技巧.doc
- 法兰国标尺寸技巧.doc
- 初中历史各册中考复习提纲(中图版全本)2009技巧.doc
- 初中课标3500常用字组词技巧.doc
- 法兰的毕业设计技巧.doc
- 初中科学难题训练+答卷技巧.doc
- 五位一体教案教学教案设计.docx
- 思修与法基-教学教案分享.pptx
- 大学军事之《中国国防》题库分享.docx
- 2023版毛泽东思想和中国特色社会主义理论体系概论第五章-中国特色社会主义理论体系的形成发展.pdf
- 思修与法基 教学全案分享.docx
- 大学军事之《军事思想》题库分享.docx
- 《经济思想史》全套课件-国家级精品课程教案课件讲义分享.pdf
- 厦门大学国际金融全套资料(国家级精品课程)--全套课件.pdf
- 2023版毛泽东思想和中国特色社会主义理论体系概论第五章-中国特色社会主义理论体系的形成发展.docx
- 2023版毛泽东思想和中国特色社会主义理论体系概论第五章中国特色社会主义理论体系的形成发展分享.pdf
文档评论(0)