计算机图形学实验三报告

上传人:简****9 文档编号:106377063 上传时间:2022-06-13 格式:DOCX 页数:13 大小:263.55KB
收藏 版权申诉 举报 下载
计算机图形学实验三报告_第1页
第1页 / 共13页
计算机图形学实验三报告_第2页
第2页 / 共13页
计算机图形学实验三报告_第3页
第3页 / 共13页
资源描述:

《计算机图形学实验三报告》由会员分享,可在线阅读,更多相关《计算机图形学实验三报告(13页珍藏版)》请在装配图网上搜索。

1、1江林大-fl计算机科学与通信工程学院实验报告课程计算机图形学实验题目二维图形变换 学生姓名学号专业班级指导教师成绩评定表评价内容具体内容权重得分论证分析方案论证与综合分析的正确、合理性20%算法设计算法描述的止确性与可读性20%编他实现源代码正确性与可读性30%程序书写规范标识符定义规范,程序书写风格规范20%报告质量韭的清晰,提交准时总 分10%指导教师签名二维图形变换1 .实验内容完成对北极星图案的缩放、平移、旋转、对称等二维变换。提示:首先要建好图示的北极星图案的数据模型(顶点表、边表)。另外,可重复调用“清 屏”和“暂停”等函数,使整个变换过程具有动态效果。2 .实验环境软硬件运行环

2、境:Windows XP开发工具:visual studio 20083 .问题分析1 .放大缩小变换放大缩小变换公式为:x =x.Sx, y =y.Sy; 其中Sx,Sy分别为x,y方向的放缩 比例系数。变换矩阵表达式为:x v 1=x y 1Sx 0 00 Sy 00 0 1_J可通过下面不同的比例系数来显示程序运行结果。(1) Sx=Sy=1.5;等比例放大(2) (2) Sx=Sy=0.5;等比例缩小2 .对称变换包括以x轴对称、y轴对称和原点。对称三种。由于屏幕坐标只有第一象限,我 们可以将原点平移到(500, 240)处。在第一象限画出一个三角形,然后分别求出三个 对称图形。3 .

3、旋转变换将图形上的点(x, v)旋转0角度,得到新的坐标(x,y)为:x =xcos 0 -ysin 0 , y =xsin 0 +ycos 0 ;变换矩阵表示为:xy1=x y 1 cos0 sin 0 0sin0 cos0 00014 .算法设计程序框架:DiamondView.hclass CDiamondView : public CView public:/参数输入和提示对话框void Polaris();/北匕极星;/DiamondView.cppvoid CDiamondView二OnMenuDiamond()IsCutting = FALSE;if(dlgDiamond.DoM

4、odal()=IDOK)DrawDiamond(dlgDiamond.m_nVertex,dlgDiamond.m_nRadius,100);调用绘制金刚石的函数/北极星void CDiamondView二Polaris()5 .源代码/北极星void hzbjx(CDC* pDC,long x18,long y18)CPen newPen1,*oldPen;newPen1.CreatePen(PS_SOLID,2,RGB(255,0,0);oldPen = pDC-SelectObject(&newPen1);POINTvertex111=x1,y1,x2,y2,x3,y3,x4,y4,x5

5、,y5,x3,y3,x1,y1, x6,y6,x3,y3,x7,y7,x5,y5;pDC-Polyline(vertex1, 11);newPen1.DeleteObject();newPen1.CreatePen(PS_SOLID, 2, RGB(0,255,0);oldPen = pDC-SelectObject(&newPen1);POINT vertex25=x6,y6,x8,y8,x9,y9,x3,y3,x8,y8;pDC-Polyline(vertex2, 5);POINT vertex35=x4,y4,x10,y10,x11,y11,x3,y3,x10,y10;pDC-Polyl

6、ine(vertex3, 5);newPen1.DeleteObject();newPen1.CreatePen(PS_SOLID, 2, RGB(255,0,90);oldPen = pDC-SelectObject(&newPen1);POINTvertex411=x12,y12,x13,y13,x3,y3,x9,y9,x14,y14,x15,y15,x 3,y3,x11,y11,x12,y12,x3,y3,x14,y14;pDC-Polyline(vertex4, 11);newPen1.DeleteObject();newPen1.CreatePen(PS_SOLID, 2, RGB(

7、0,100,255);oldPen = pDC-SelectObject(&newPen1);POINT vertex55=x15,y15,x16,y16,x3,y3,x16,y16,x7,y7;pDC-Polyline(vertex5, 5);POINT vertex65=x2,y2,x17,y17,x3,y3,x17,y17,x13,y13;pDC-Polyline(vertex6, 5);pDC-SelectObject(oldPen);Sleep(10);void CDiamondView二Polaris()InvalidateRgn(NULL);UpdateWindow();CDC

8、*pDC = GetDC();long x18,y18;x1=553,y1=100;x2=515,y2=251;x3=553,y3=338;x4=516,y4=426;x5=553,y5=551;x6=589,y6=253;x7=591,y7=426;x8=678,y8=212;x9=641,y9=311;x10=454,y10=438;x11=478,y11=364;x12=415,y12=338;x13=466,y13=301;x14=703,y14=338;x15=640,y15=375;x16=665,y16=450;x17=440,y17=226;hzbjx(pDC,x,y);Sle

9、ep(500);InvalidateRect(NULL);UpdateWindow();long x118,y118; /缩小for(double n=1;n=0.5;n-=0.01)x1i=Round(xi*n);y1i=Round(yi*n);hzbjx(pDC,x1,y1);Sleep(10);InvalidateRect(NULL);UpdateWindow();InvalidateRect(NULL);UpdateWindow();long x218,y218; /放大for(double n=1;n=1.5;n+=0.01)for (int i=1;i18;i+)x2i=Round

10、(x1i*n);y2i=Round(y1i*n);hzbjx(pDC,x2,y2);Sleep(10);InvalidateRect(NULL);UpdateWindow();InvalidateRect(NULL);UpdateWindow();hzbjx(pDC,x,y);Sleep(500);long x318,y318;/沿 X 轴平移for(int n=0;n=300;n+=2)for(int j=1;j18;j+)x3j=xj+n;y3j=yj;hzbjx(pDC,x3,y3);Sleep(1);InvalidateRect(NULL);UpdateWindow();long x4

11、18,y418; 沿 Y 轴平移for(int n=0;n=300;n+=2)for(int j=1;j18;j+)x4j=x3j;y4j=y3j+n;hzbjx(pDC,x4,y4);Sleep(1);InvalidateRect(NULL);UpdateWindow();long x518,y518; /般时针旋转for (double t=0;t=PI;t+=0.01)for(int k=1;k=0;t-=0.01)for(int k=1;k18;k+)x6k=Round(xk*cos(t)-yk*sin(t)-x3*cos(t)+y3*sin(t)+x3);y6k=Round(xk*s

12、in(t)+yk*cos(t)-x3*sin(t)-y3*cos(t)+y3);hzbjx(pDC,x6,y6);InvalidateRect(NULL);UpdateWindow();Sleep(500);long x718,y718;/船 X=1000对称for(int l=1;l18;l+)xl=Round(xl*0.5);yl=Round(yl*0.5);x7l=1000-xl;y7l=yl;hzbjx(pDC,x,y);hzbjx(pDC,x7,y7);Sleep(200);long x818,y818;/船 Y=600 对称 for(int l=1;l18;l+)x8l=xl;y8

13、l=600-yl;hzbjx(pDC,x,y);hzbjx(pDC,x8,y8);Sleep(200);long x918,y918;for(int l=1;l18;l+)x9l=1000-xl;y9l=600-yl;hzbjx(pDC,x,y);hzbjx(pDC,x9,y9);6 .程序运行结果-Ate 51, 口 君曲国情中 WSfl) KC V 的吟 /国口齿,1%辛占胃图1北极星图案的数据模型-IGI Ml支修也布制净 前国JU af W1 4 -,芦 T;工 F1图3北极星图案的平移02|上浮坦皎醛图 里石, 布断如 餐国h加甘部.字-JDliJ图5北极星图案的对称贡停工卜图瑞QJ皂W9葩的山蚣图7.总结在这次的实验中,按照图形变换的基本原理,我简单实现了图形的几种变换。但是由于自己对函数的运用的不太熟悉,因此,在这次的实验中遇到一些困难,以后要在这方面有所改进。通过这次的实验,知道了如何利用程序进行二维图形的一些基本变换,在以后的学习过程中要不断努力如 u vud

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!