- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
学号
■L i | -A a # 就
计算机图形学实验报告
实验二图形几何变换过程的设计
学生姓名
专业、班级
指 导 教 师
成 绩
电子与信息工程系
2013 年 4 月 12 H
天津城市建设学院
设计性实验任务书
电子与信息工程系 专业 班
姓名 学号
课程名称: 计算机图形学
设计题目: 图形几何变换过程的设计
完成期限:自2013 年4 月2 H至一 2013 年4月12 日
设计依据、要求及主要内容(可另加附页):
1设计依据:
本课程设计是依据教材vv计算机计算机图形学>>一书的第4章图形儿何变换为设计依据, 制作图形儿何变换的程序。
2设计要求:
编制程序实现多边形的平移、比例、旋转、错切和对称二维变换。
指导教师:
实验目的:
图形变换是计算机图形学中一个基本而重要的内容,它是将图形的儿何信息 经过几何变换后产生的新的图形。一个简单的图形,通过各种变换可以形成一个 复杂的、丰富多彩的图形图案;通过变换还可以改变形体的形状。这次的实骑主 要是要求我们掌握图形变换的一些最基本的变换,编写程序来实现二维图形的基 本变换。
题目:
编制程序实现多边形的平移、比例、旋转、错切和对称二维变换。
设计思想:
由于二维图形是由点或直线段组成,其中肓线可由其端点坐标定义,因此二 维图形的几何变换可以归结为对点或对直线端点的变换。同时我们知道每种变换 都有其变换矩阵,因此在画出坐标轴以后,将图形的每个端点乘以相应的变换矩 阵就可以实现图形的变换。
原程序:
一、平移变换:
| File Edit Run CoMpile Project Options D^bug BrEak/natch —
Edit
Line 1 Co 1 1 Insert Indent Tab Fill Unindent * C:JIALI.C
tt inc ludegraphics.h
it inc ludeMath ? h
Ma i n()
int gd=UGAfgM=UGAHI;
int xl=80^1 = 180tx2 = 130.^2 = 140fx3 = 100t ^3 = 100;
int p^[3](3]=ll0t0,0llt0,200,200.1;
int xpl9yipl9 xp2, yp2, xp3,yp3 ;
initgraphCgd、 gM, MC:xxtcM); cleardeuice();
setbkcolorC LIGHTBLUE );
setcolor( RED );
line(320,0,320,480);
lineCO,240,640,240);
1 ine(xl, ^il, x乙 y2);
1 i ne (x2, y2, x3, );
1 ine(x3, ^3, xl, ;
xpl=xl*pvj[0][01*^l*py[l][0]*p^[2](0];
xp2=x2*p^[0][0J*^2*py[l][0]*p^(2][0];
yp2=x2*py [0][1] [ 1 ] [ 1 ][ 2 】【1 ];
xp3=x3*p^[0][0]*^3*p^[l][0]*p^[2](0];
yp3=x3xpy[8](1]?y3*py;
1ineCxpl,^plf xp2t ^p2);
1 ine(xp2, #p2. xp3』p3);
1ine(xp3typ3,xpl,ypl);
getch();closegraphC);
Hatch
Fl-Help F5-Zoom F6-Snitch F7-Trace F8-Step F9-Make F10-Menu
二、比例变换:
File Edit Run Compile Project Options Debug Break/natch
Edit ,
Line 8 Col 24 Insert Indent Tab Fill Unindent * C:JIALI.C
tt includeMath.h
Ma i n ()
int gd=UGA,gM=UGAHI;
int xl=80,^1=180,x2=130,v2=148x3=100fv3=100;
int bl[3H3] = 2l0t0,012A.0t0f 0f 1;
int xbl9^blfxb2fyb2,xb3f^b3; initgraphCgd. gM. MC:wtcM); c leardeviceC); setbkcolor( LIGHTBLUE ); setcolorC RED );
llne(320t;
line(0,240,640,240);
1 ine(xl, ^1, x2, ^2);
1 ine(x2, ^2, x3, ^3);
1 ine(x3,y3,xl,yl); x
文档评论(0)