MFC计算机图形学课程设计报告地砖铺设解读.pdf
《MFC计算机图形学课程设计报告地砖铺设解读.pdf》由会员分享,可在线阅读,更多相关《MFC计算机图形学课程设计报告地砖铺设解读.pdf(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 计算机图形学 课程设计 项目题目:地砖图案设计和铺设效果的模拟设计 专 业:计算机科学与技术 班级学号:姓 名:指导教师:李丽亚 2014 年 6 月 一、项目概述 在计算机高速发展的今天,计算机模拟现实已经逐步成为一次计算机的科技革命,模拟系统的生成和应用也逐步发展和成熟。在这个模拟系统中对于地砖图案样式的设计我们利用window 7操作系统下Microsoft Visual C+6.0中的MFC,采用二维坐标点来进行绘制地砖图案样式,并对其运行、调试。对其整体铺设效果的模拟我们采用平移变换矩阵,任意点的旋转变换矩阵对二维的图形进行整体铺设,使其变成一个完整的图案。我们还在系统中加入了地砖
2、数量的的计算,在MFC中新建了一个Dialog的控制窗口,通过用户给定房间的长宽来计算房间所需地砖总数(地砖样式规格是800mm800mm)。在设计完这些之后我们为了使铺设效果更佳逼真,加入了三维的坐标点,利用斜等测变换矩阵实现了地砖铺设的立体效果,这样更能增强观赏度。在工程实际中经常会遇到房屋地板砖的铺设问题,在此类为题中,我们需要考虑地板砖的成本、铺设人工费用以及地板砖破损成本等方面因素,来使成本最小化。通过对求解的结果比较选取成本最低的模型。我们可以将铺设块数、费用及利用率的问题的计算归结到地板砖铺设最低费用的问题中。比较五种地板砖铺设总费用:尺寸 800*800 600*600 400
3、*400 300*300 600*300 300*600 所需总费用 42757 49988 60521 60807 58365 57814 我们可以得到,选择铺设规格为800mm*800mm的地板砖所需费用最少,为42757元。通过上面分析可知800mm*800mm规格的地板砖性价比最高,我们可以优先利用800*800的地板砖进行模拟块数的铺设,在不能铺设完整规格的800mm*800mm的区域外,再用其他规格的地板砖进行切割填补。二、项目需求 2.1 几何变换的原理 计算机图形系统的基本功能之一是模拟在空间对物体进行操纵。这种模拟的空间操纵称为变换。可以从两种互补的观点出发来描述物体的变换。
4、第一种是物体本身相对于一个固定不动的坐标系或背景作变换。此观点从数学角度讲就是对物体上的每一个点进行几何变换。第二种观点将物体看成固定不动,而坐标系则 相对于物体作变换。这一效果可通过进行坐标变换来取得。物体的空间操纵有三种基本形式。第一,它们可以在不改变大小和朝向的前提下移动到新的位置。第二,它们可以被放大和缩小。第三,它们可以绕一个点或一条轴旋转。但本论文设计中只应用了后两者几何变换。在程序设计中,在缩放以及旋转几何变换时首先必须建立 modelview 的矩阵。它是和来进行建模变换与观察变换的合成变换矩阵。这个建模与观察矩阵的初始化可以通过以下语句完:glMatrixMode(GL_MO
5、DELVIEW);glLoadIdentity();其中 glMatrixMode 将建模与观察矩阵设为系统当前的矩阵,所有随后指定的变换都对当前的矩阵生效。2.2 几何变换旋转 r(x,y)yx(x,y)r 图 3 二维旋转(几何变换)平面上的旋转是相对于一个点(旋转中心)来进行的,而空间中的旋转则是相对于一条轴来完成。我们将基本的两维旋转定义为绕 xy 坐标系的原点进行。图 3 表示位于(x,y)的点经过大小为角的两维几何旋转 R()后的新位置(x,y)。首先考虑斜边连接原点及(x,y)的直角三角形并使用三角恒等式来得到:然后从斜边连接原点及(x,y)的另一个直角三角形得到 x=rcos和
6、 y=rsin。sinsincoscos)cos(sincoscossin)sin(yrrrxrrrsincossincosyxxyxy 将此结果代入上式就有:在二维旋转的基础上,来实现三维旋转。三维旋转有三种基本方式:绕 z 轴旋转(见图 4(a)和 5(a),绕 x 轴旋转(见图 4(b)和 5(b),绕 y 轴旋转(见图 4(c)和 5(c)。与正旋转角在二维旋转中意味着反时针旋转的规定一致,正旋转角在三维旋转中意味着旋转方向按右手定则确定(拇指与旋转轴指向相同时,其余四指给出旋转方向)。yyyxxxzzz(x,y,z)(x,y,z)(x,y,z)(x,y,z)(x,y,z)(x,y,z
7、)(b)(a)(c)图 4 三维旋转(几何变换)yyyxxxzzz(x,y,z)(x,y,z)(x,y,z)(x,y,z)(x,y,z)(x,y,z)zzzxxxyyy(a)(b)(c)图 5 三维旋转(几何变换)绕 y轴旋转时(既包括几何变换 Ry()也包括与其互补的坐标变换 Ry(-))物体上的点的 y 坐标保持不变。这就是说每个点可以看成是一个与 xz 平面平行的平面上旋转旋转方式与一个在 xz 平面上的点完全相同。于是我们可以得出三维旋转公式:旋转变换可以通过调用 glRotate*语句来实现:void glRotatef d(TYPE angle,TYPE x,TYPE y,TYPE
8、 z)其中该函数有四个 GLfloat 或 GLdouble 类型的参数:angle,x,y 和 z。angle 表示sincossincosxzzyyxzx 要旋转的角度,以度数方式表示,为 0360 之间的值;x,y,z 构成一个向量,依次代表该向量 x,y,z 三个方向上的分量值,旋转是按反时针方向围绕从原点到(x,y,z)的轴进行。在设计中单方面的对 X 轴、Y 轴、Z 轴中的某一轴定义旋转这样会使三维立体图在实现旋转时存在单一性和局限性,所以通过程序的编写对参数的改变使旋转可以通过任意轴旋转来完成,在设计中可以围绕一条经过某一点并与它的方向向量同向的轴线作为任意轴旋转。目前地砖图案设
9、计大多手绘或者通过相机拍摄实物地砖实现其整体效果,很不方便。我们通过计算机模拟系统来建立地砖设计及铺设效果。开发一种既能设计地砖图案,又能根据所给地面尺寸自动铺设地砖,同时生成整体预览效果图的一种系统软件,节省人力物力资源。技术需求:地砖的铺设效果图通常都是由实体地砖铺设后拍照而来,而计算机模拟地砖铺设并给出铺设效果图实现了计算机模拟显示,技术先进,省时省力。思维需求:通过现在已有的高科技来高效实现对瓷砖的设计和方案规划,既体现了人们对高科技的充分利用,同时更加体现了人们思维的极大转变,不再依靠粗糙的手段来设计方案。三、项目设计 3.1 前期准备:前期先对资料进行一定的搜集,搜集地砖图案样式,
10、对其可行性进行分析,并集中整理和归纳以及搜集在Microsoft Visual C+6.0中的 MFC 运行环境中操作的相关资料,为开发模拟系统做准备。3.2 组织实施:搜集完成之后利用window 7 操作系统下 Microsoft Visual C+6.0 中的 MFC对所搜集到的地砖图案进行二维坐标点的计算,利用 MFC 中的画笔对这些坐标点进行绘制,使这些地砖图案样式出现在模拟系统界面。最后将所绘制出的地砖样式运用 MFC 中旋转矩阵和平移矩阵的算法,将这些样式进行一定的旋转和平移,使其在系统界面勾勒出该地砖的完整图案。在制作完这些之后,加入了三维坐标点,利用算法中的斜等测算法使绘制的
11、地砖样式产生了立体效果,使得这个地砖铺设系统更佳的逼真。3.3 预期效果:1、搜集地砖图案样式,并对其可行性进行分析。对所采集的地砖样式图案在 VC+6.0中进行图案绘制。2、对已经设计好的地砖样式进行平移旋转拼接,使其成为一个完整的图案。3、设计在已知房间长和宽的基础上,计算出房间所需铺设地砖的总块数。4、利用平行投影中的斜等测变换矩阵,让铺设立体化,使其效果更佳逼真。3.4 绘制地砖代码:void CTestView:DrawObject1()/绘制地砖 CRect Rect;GetClientRect(&Rect);CDC*pDC=GetDC();pDC-SetMapMode(MM_AN
12、ISOTROPIC);/自定义坐标系 pDC-SetWindowExt(Rect.Width(),Rect.Height();pDC-SetViewportExt(Rect.Width(),-Rect.Height();/x轴水平向右,y轴垂直向上 pDC-SetViewportOrg(Rect.Width()/2,Rect.Height()/2);/屏幕中心为原点 CPen NewPen,*pOldPen;NewPen.CreatePen(PS_SOLID,5,RGB(0,0,0);pOldPen=pDC-SelectObject(&NewPen);CBrush NewBrush,*pOld
13、Brush;NewBrush.CreateSolidBrush(RGB(255,0,0);pOldBrush=pDC-SelectObject(&NewBrush);pDC-Rectangle(ROUND(Q1.x),ROUND(Q1.y),ROUND(Q2.x),ROUND(Q2.y);pDC-Pie(ROUND(Q6.x),ROUND(Q6.y),ROUND(Q7.x),ROUND(Q7.y),ROUND(Q1.x),ROUND(Q1.y),ROUND(Q2.x),ROUND(Q2.y);/大圆弧 pDC-MoveTo(ROUND(Q5.x),ROUND(Q5.y);pDC-LineTo(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MFC 计算机 图形学 课程设计 报告 地砖 铺设 解读
限制150内