- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Dos界面计算机图形学画图
计算机图形学大作业报告
课程名称: 计算机图形学
姓 名: 陶向东
学 号: 100511726
组 员:
任课教师: 贾瑜
成 绩:
引言
1.1 编写目的
本学期计算机图形学课程期末大作业主要的开发项目就是基于DOS的基本图形的绘制、填充、变换,以及直线的裁剪。实现语言VC++,编辑、调试环境VC++6.0。此次大作业的完成是对计算机图形学基础知识的检验和测试,在撰写报告的过程中我能够更深刻地了解计算机图形学算法的思想,通过这份文档来记录我们在开发此软件的过程中遇到的问题以及改善的方法。现在对整个开发过程加以认识、记录和总结,留下经验,汲取教训。为以后的其他工作留下经验资料,为以后遇到相同的问题和从事类似项目奠定坚实的基础。
任务分工
陶向东:
2 程序框架
2.1 程序模块
本系统是一个::
基本图形裁剪模块:
图2-1 程序框架图
程序功能接口
接口名称:void drawLine(int xs,int ys,int xe,int ye,int value);
功能说明:实现正负法画直线。
参数说明:xs,ys:起点坐标;
xe,ye:终点坐标;
value:画线颜色。
接口名称:void drawCircle(int x0,int y0,int r,int value);
功能说明:实现正负法画圆。
参数说明:x0,y0:圆心坐标;
r:半径;
value:画圆颜色
接口名称:void drawRectangle(int x0,int y0,int x1,int y1,int value);
功能说明:实现画矩形。
参数说明:x0,y0:矩形其中一个点的坐标;
x1,y1:矩形对角点的坐标;
value:画线颜色。
接口名称:void drawTriangle(int x0,int y0,int x1,int y1,int x2,int y2,int value);
功能说明:实现画三角形。
参数说明:x0,y0:三角形第一个点的坐标;
x1,y1:三角形第二个点的坐标;
x2,y2:三角形第三个点的坐标;
value:画线颜色。
接口名称:void midellipse(int x,int y,int color);
功能说明:实现画椭圆。
参数说明:x,y:椭圆中点坐标;
color:画线颜色。
接口名称:void drawshape();
功能说明:画填充图形。
参数说明:无。
接口名称:void edgemark_fill();
功能说明:图形填充。
参数说明:无。
接口名称:initialize( );
功能说明:初始化界面。
参数说明:无。
接口名称:void encode(int x,int y,int *code)
功能说明:给被裁剪图形编码。
参数说明:int x:图形位置的横坐标;
int y:图形位置的纵坐标;
int *code:记录点的位置。
接口名称:void draw_ett();
功能说明:实现图形裁剪
参数说明:无
接口名称:void void chosenum();
功能说明:提示选择功能。
参数说明:无。
接口名称:void CirclePoints(int x0,int y0,int x,int y,int value);
功能说明:存储下一个圆上的点。
参数说明:x0,y0:第一个点的坐标;
x,y:圆点坐标;
value:画线颜色。
主要算法描述
边界标识法填充
扫描线具有连贯性,这种连贯性只有在扫描线与多边形相交处才会发生变化,而每次的变化结果:无非是在前景色和背景色之间相互“切换”。
边标志填充算法正是基于这一发现,先在屏幕上生成多边形轮廓线,然后逐条扫描处理。处理中:逐点读取象素值,若为边界色,则对该象素值进行颜色切换。1、用边界色画出多边形轮廓线,也就是将多边形边界所经过的象素打上边标志。
2、为了缩小范围,加快填充速度,须找出多边形的最小包围盒:xmin、ymin、xmax、ymax。如下图
文档评论(0)