- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机图形学基础实验指导书
计算机图形学基础实验指导书
目 录
实验一 直线的生成 - 2 -
实验二 圆弧及椭圆弧的生成 - 3 -
实验三 多边形的区域填充 - 4 -
实验四 二维几何变换 - 5 -
实验五 裁剪算法 - 6 -
实验六 三维图形变换 - 7 -
实验七 Bezier曲线生成 - 8 -
实验八 交互式绘图技术实现 - 10 -
实验一 直线的生成
一、实验目的
掌握几种直线生成算法的比较,特别是Bresenham直线生成算法
二、实验环境
实验设备:计算机
实验使用的语言:C++、
三、实验内容
用不同的生成算法在屏幕上绘制出直线的图形,对不同的算法可设置不同的线形或颜色表示区别。
四、实验步骤
直线Bresenham生成算法思想如下
画点(x1,y1),dx=x2-x1,dy=y2-y1,计算误差初值P1=2dy-dx,i=1;
求直线下一点位置 xi+1=xi+1 如果Pi0,则yi+1=yi+1,yi+1=yi;
画点(xi+1,yi+1);
求下一个误差Pi+1点,如果Pi0,则Pi+1=Pi+2dy-2dx,Pi+1=Pi+2dy;
i=i+1,如果idx+1则转步骤2,否则结束操作。
实验二 圆弧及椭圆弧的生成
一、实验目的
掌握几种圆弧和椭圆弧生成算法的比较,特别是Bresenham圆弧和椭圆弧生成算法
二、实验环境
实验设备:计算机
实验使用的语言:C++、
三、实验内容
1.用Bresenham生成算法在屏幕上绘制出圆弧的图形。
2.用Bresenham生成算法在屏幕上绘制出椭圆弧的图形
四、实验步骤
圆的生成算法一般将圆划分为8等份,只需计算(900,450)的八分之一圆弧,其它用对称法求得(参见下图)。
Bresenham生成算法思想如下(第一象限,且斜率k1的情况):
计算误差初值P1=3-2r,i=1,画点(0,r);
求下一个光栅点位置 xi+1=xi+1 如果Pi0,则yi+1=yi,yi+1=yi-1;
画点(xi+1,yi+1);
4) 求下一个误差Pi+1点,如果Pi0,则Pi+1=Pi+2xi+6,Pi+1=Pi+4(xi-yi)+10;
5) i=i+1,如果x=y则结束操作,否则转步骤2。
实验三 多边形的区域填充
一、实验目的
1.通过实验,进一步理解和掌握几种常用多边形填充算法的基本原理;
2.掌握多边形区域填充算法的基本过程;
3.掌握在Visual C++环境下用多边形填充算法编程实现指定多边形的填充
二、实验环境
实验设备:计算机
实验使用的语言:C++、
三、实验内容
1.用种子填充算法实现区域填充。
2.扫描线填充算法实现区域填充。
3.用x-扫描线算法实现多边形的填充(可选);
4.实现边缘填充算法和边标志填充算法(可选);
四、实验步骤
区域填充是指从区域内的某一个象素点(种子点)开始,由内向外将填充色扩展到整个区域内的过程。区域是指已经表示成点阵形式的填充图形,它是相互连通的一组像素的集合。
1、栈结构实现4-连通边界填充算法的算法步骤为:
种子象素入栈;当栈非空时重复执行如下三步操作:
(a)栈顶象素出栈;
(b)将出栈象素置成填充色;
(c)检查出栈象素的4-邻接点,若其中某个象素点不是边界色且未置成多边形色,则把该象素入栈。
2、栈结构实现8-连通边界填充算法的算法步骤为:
种子象素入栈;当栈非空时重复执行如下三步操作:
(a) 栈顶象素出栈;
(b) 将出栈象素置成填充色;
(c) 检查出栈象素的8-邻接点,若其中某个像素点不是边界色且未置成多边形色,则把该像素入栈。
实验四 二维几何变换
一、实验目的
进一步加深对常用的二维几何变换的理解,如平移、旋转、放大缩小等。掌握变换顺序和变换矩阵。
二、实验环境
实验设备:计算机
实验使用的语言:C++、
三、实验内容
通过二维几何变换的数学模型,编写平移、旋转、放缩、对称变换;
绘制一个北极星图案或字母图案,如下图所示,实现该图形的平移、旋转、放缩、对称等几何变换;
加入鼠标功能,实现图形的拾取及交互式移动等功能。
四、实验步骤
二维几何图形的步骤:
1、选取二维空间坐标系。
2、在选定的坐标系中,确定图形走笔顺序或连点顺序(拓扑结构) ,写出图形中上各顶点位置坐标,同时引入齐次坐标表示成n(点数)*3阶矩阵。
3、根据图形的拓扑结构及顶点坐标,绘制图形。
4、将图形的顶点坐标矩阵乘以变换矩阵(不同的变换乘以不同的变换矩阵),得到变换后的顶点坐标,再根据图形的拓扑结构及顶点坐标,绘制变换之后的图形。
实验五 裁剪算法
一、实验目的
1、熟悉各种直线裁剪算法,包括Cohen-Sutherland线
您可能关注的文档
- 西安石油大学现代数值计算方法第8章.ppt
- 西安科技大学《计算机软件基础》第二章树与二叉树(2.5).ppt
- 西工区单位安全管理标准与管理措施.doc
- 西工大会变与接口 微机接口技术.ppt
- 装修工程设计图纸基本知识.ppt
- 西安同创电气有限公司10KV高压配电室说明书(一册).doc
- 西师大版一年级语文上册《荒地》PPT课件.ppt
- 西师版小学五年级下册数学《分数的大小比较课件》.ppt
- 西师版五年级三角形的面积1.ppt
- 西师版二上4水妈妈的孩子.ppt
- 2025年智能快递驿站行业政策与市场机遇报告.docx
- 2025年校园安全防范中新能源电动巡逻车采购可行性分析.docx
- 2025年智能垃圾分类智慧监管平台在智慧旅游区的应用前景研究.docx
- 2025年智能家居报告:人工智能伦理风险的法律责任与用户隐私保护.docx
- 2025年智能垃圾分类与垃圾分类信息化管理结合的可行性研究.docx
- 2025年智慧社区远程医疗诊断中心在基层医疗机构运营管理中的应用报告.docx
- 2025年智慧社区:老年活动广场智能化升级研究.docx
- 2025年智能社区新能源电动巡逻车市场应用前景分析报告.docx
- 2025年智能垃圾分类智慧监管平台在垃圾分类回收与处理中的智能化改造路径.docx
- 2025年本土半导体材料产业链国产化战略布局报告.docx
文档评论(0)