面向对象程序设计报告-基本图形处理软件课程设计报告.docVIP

面向对象程序设计报告-基本图形处理软件课程设计报告.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象程序设计报告 一.设计要求 设计圆(包含椭圆)、矩形(包含正方形)、三角形、直线等基本图形类,基于这些基本图形类构造、编辑复杂图形,基本功能包括: ① 图形的创建:以圆(包含椭圆)、矩形(包含正方形)、三角形、直线等基本图形为元素构建复杂图形。 ② 图形的编辑:增加图形元素(基本图形)、删除图形元素(基本图形) ③ 图形放大、缩小 ④ 图形保存 二.概述 本次程序设计为基于C++的面向对象的程序设计。用C++各种基本图形(例如,圆、矩形、三角形、直线、点等)的类原型,通过继承图形这一个公共基类来实现图形的增删改以及保存等操作。通过此次实习,我对类的相关操作以及类的作用有了更深一步的认识。对面向对象程序设计有了进一步的理解。特别是进一步熟悉并使用面向对象的继承、多态等机制。 该系统中,定义了一个鼠标类和窗口类,窗口类又继承了鼠标类,使得所有的操作变得简单明了,代码可移植性也很强。整体操作方式与windows中画图的操作方式相似,而且可以随时更改以前画过的图形,该系统实现了各类基本图形的产生,放大,缩小,删除、移动、改变颜色、改变线型与保存等功能。采用汉字库,实现了中文显示,为该系统的使用者提供了便利。而且界面上操作很方便,可以使用快捷键,可以直接点击鼠标来轻松绘制图片。使用了Turboc++编译器,编译器下载地址:http://12./wintc_duote.exe 。 三.主要类说明 1.各基本图形类的基类:FIGURE 该类归纳了各种图形类的共同数据以及共同操作,声明了几个纯虚函数: virtual void show()=0; virtual void hide()=0; virtual void expand(int delta)=0; virtual void save()=0; 实现了同一函数在各个不同的图形类中有不同的实现。增大了程序的灵活性。其中show()函数的作用是显示图形,hide()函数是用来隐藏图形,expand()函数是用来放大选中的图形。save()函数将对应图形的相关数据以文件的形式保存。此外,此基类中还包含了一个move_to()函数,该函数实现了图形在选定方向上的移动。包含的数据成员有:整型数据x_pos,y_pos,用来记录坐标。 /////////////////////////////////////图形类 基类////////////////////////////// class FIGURE { public: FIGURE(int x,int y,int lstyle,int lcolor); virtual void show()=0; virtual void hide(int bkcolor)=0; virtual void expand(int bkcolor,int delta)=0; virtual void save()=0; void move_to(int bkcolor,int direction,int speed); void contract(int bkcolor,int delta); int color,style; protected: int x_pos,y_pos; }; 2.直线类:MYLINE 该类中的数据成员有:整型数据x_pos2,y_pos2用来记录坐标。 ///////////////////////////////////直线类///////////////////////////////////// class MYLINE:public FIGURE { public: MYLINE(int x1,int y1,int x2,int y2,int style,int color); virtual void show(); virtual void hide(int bkcolor); virtual void expand(int bkcolor,int delta); virtual void save(); virtual void move_to(int bkcolor,int direction,int speed); protected: int x_pos2,y_pos2; }; 3.三角形类:TRIANGLE 该类的功能是实现以三角形为对象的各种操作。该系统中只是简单的处理了三角形的绘制,只能画等腰三角形,所以只用了一个私有数据length来记录三角形的腰长。 ////////////////////////////////////三角形类///

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档