矢量图形工具的设计与实现(VC++)
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
一种矢量图形工具的设计与实现摘 要矢量图形系统的开发是利用VC++开发地理信息系统(GIS系统)的重点和难点。利用VC++进行矢量图形系统的开发主要是利用VC++的设备环境DC提供的功能进行图形绘制和采用面向对象的方法来组织和管理矢量图形数据。该论文分析了矢量图形系统的基本结构,采用了面向对象的思想,设计了图形对象的类继承层次,其中基类对象又派生出直线、圆弧(圆)和曲线,文本等类,给出了矢量图形系统类的组织结构。并且从整体功能结构到单独的类的具体实现和视图的实现,鼠标交互绘制,图形操作,图形选中、移动、删除等各个方面开发实现了一个基本的矢量图形工具系统。完成了处理点、线、圆、面、标注文本等图形元素的功能,并具有处理图例(即图形块)的能力;具有相对完善的图形操作功能,方便的图形I/O功能,以及图形移动、删除的功能。
think58好,好think58 [资料来源:www.THINK58.com]
关键词:面向对象;图形操作;I/O;The Design and Realization of a Vector Graphics ToolAbstractThe Vector Graphics system is one of the most important and difficult parts for GIS(Geographical Information System) development with VC++. The Vector Graphics system mainly includes implementing different drawing functions under the environment provided by VC + + 6.0, organizing and managing vector-based graphic data by means of object-based methods.The idea of object-oriented is introduced in this paper, the geographic elements in the system are classified into line, arc(circle) ,curve and text. The basic classes’ framework is proposed by analyzing the basic structure of the vector graphics system. A basic vector graphics tool system is designed and realized from the kind of organization, the view’s realization, the mouse’s alternately draws up, the graphics operation, the graph selected, migration, deletion, and so on. Different drawing functions are implemented, including spot, line, circle, surface and note text. The system has the ability of processing chart of symbols (namely graph block). The realizations of relative consummation graphics operation function and facilitates graph I/O function is given, as well as graph migration, deletion function.
[版权所有:http://think58.com]
Key words : Object-oriented Graph operation I/O
think58 [来源:http://www.think58.com]
[资料来源:http://think58.com]目 录论文总页数:25页1引言11.1课题背景及研究的目的和意义11.2矢量图形系统11.3课题研究方法12总体设计思想22.1整体功能模块的设计22.2功能模块说明23矢量图形结构33.1基类的组织33.2视图的实现53.2.1实际坐标与逻辑坐标的转换53.2.2图形元素的绘制功能63.3图形操作方面63.3.1屏幕状态的记录63.3.2边界矩形73.3.3点选的判断和特殊显示73.3.4图形的移动93.4提高图形重画速度94矢量图形工具系统的设计104.1类的实现104.2鼠标交互绘制134.3重画技术134.3.1图形重画134.3.2重画上屏、首屏和显示全图154.4图形移动和选中后操作174.4.1图形点选功能174.4.2图形移动205系统测试21结 论22参考文献23致 谢24声 明25 本文来自think58
[来源:http://www.think58.com]
1引言1.1课题背景及研究的目的和意义GIS技术已经成为IT的重要组成部分。利用GIS技术开发的以多媒体,网络化,自动化为特色的信息处理,信息管理,指挥调度和决策支撑系统,已经在各领域发挥着重大作用。GIS将普通管理信息系统(MIS)与矢量图形系统结合在了一起,克服了普通MIS的局限性,大大提高了系统的直观性和可操作性,同时提供了普通MIS所不能解决的功能,如空间信息统计,空间信息计算,网络分析等。矢量图形系统是GIS的重要组成部分,也是开发GIS时的重点所在。在不同领域应用GIS,其需要的矢量图形系统的功能是有差别的。建立一个城市信息管理GIS时,要求矢量图形系统要有丰富的图形元素,丰富的线形,巨大的存储容量,完善的输入和输出功能,强大的地图编辑功能,甚至需要三维显示和处理能力;而有些管理型GIS所需要的矢量图形系统,可能只需要具有简单地处理二维普通图形元素的功能。 内容来自think58
本课题是在windows2000的系统下,vc++6.0的运行环境中设计开发的。实现了基本图形如直线、圆、填充圆、圆弧、连续直线和多边形区域的鼠标绘制;能实现简单的图形操作:图形重画、放大、摆动以及重画上屏、首屏和显示全图;也可以鼠标点选图形进行删除与否的操作。
[资料来源:www.THINK58.com]
下面以简单的图形摆动为例说明验证结果:首先画出几个简单的图形,然后选择图形操作下拉选项的图形摆动操作,鼠标拖动的白线就是图形摆动时图形发生的改变。鼠标左键二次按下,图形发生改变,图形摆动功能完成。同时还可以验证重画上屏的操作,图形恢复到未摆动时的样子。 think58好,好think58 [资料来源:THINK58.com]
Ø 如图3所示,已经画出了几个图形。 copyright think58 [版权所有:http://think58.com]
Ø 图4中已经选中了图形摆动的操作,图中白线就是鼠标拖动的痕迹,从左往右拖动,这时候还没有第二次按下鼠标左键。 think58 [版权所有:http://think58.com]
Ø 鼠标左键第二次按下,就会出现如图5所示效果,图形已经实现了往右摆动。
think58好,好think58 [资料来源:http://THINK58.com]
[版权所有:http://think58.com]Ø 这个时候可以验证重画上屏的操作,就可以得到摆动前的图形。即图1。 think58好,好think58 [资料来源:http://THINK58.com]
copyright think58
内容来自think58
[来源:http://think58.com]
[资料来源:http://THINK58.com]
think58.com
[资料来源:http://think58.com]
内容来自think58 [资料来源:http://think58.com]
think58.com [资料来源:http://www.THINK58.com]
[资料来源:http://www.THINK58.com]
[来源:http://think58.com]
图3 图形摆动前的效果
think58
内容来自think58 [资料来源:THINK58.com]
think58好,好think58
[资料来源:http://THINK58.com]
本文来自think58 [版权所有:http://think58.com]
[资料来源:THINK58.com]think58.com
[资料来源:http://THINK58.com]
内容来自think58
think58.com
[资料来源:http://think58.com]
内容来自think58
think58 [资料来源:THINK58.com]
think58
[资料来源:www.THINK58.com]
copyright think58
[资料来源:www.THINK58.com]
think58 [资料来源:http://THINK58.com]
think58
图4 图形摆动前操作 think58.com
鼠标左键第二次按下,就会出现如图5所示效果,图形已经实现了往右摆动:
本文来自think58 [资料来源:www.THINK58.com]
[资料来源:http://www.THINK58.com]
think58好,好think58
think58.com [资料来源:http://THINK58.com]
think58.com [来源:http://think58.com]
[资料来源:http://THINK58.com][资料来源:www.THINK58.com]
内容来自think58 [来源:http://think58.com]
[资料来源:http://www.THINK58.com]
内容来自think58
[来源:http://think58.com]
[资料来源:http://www.THINK58.com]
think58好,好think58 [资料来源:THINK58.com]
图5 摆动后的效果 copyright think58
[资料来源:THINK58.com]
think58 [来源:http://think58.com]