阅读:20591回复:60
使用Visual C++ 6.0开发MAPGIS浏览器
地理信息系统(GIS)是集计算机科学、地理学、测绘遥感学、环境科学、城市科学、空间科学、信息科学和管理科学为一体的新兴边缘学科,目前发展已相当成熟,国内外高水平软件分别有ARC/INFO、MAPINFO、MAPGIS等。下文介绍一个以MAPGIS为平台进行二次开发的实例。
<P>使用Visual C++ 6.0开发MAPGIS浏览器 </P> <P> 近日,笔者一直在进行MAPGIS的二次开发,略有所得。现将部分心得整理出来,与大家分享。 一、MAPGIS简介 信息作为一种新兴的产业越来越受到人们的重视,信息革命的浪潮正冲击着人类社会,在这场革命中,地理信息系统(GIS)作为集计算机科学、地理学、测绘遥感学、环境科学、城市科学、空间科学、信息科学和管理科学为一体的新兴边缘学科迅速地兴起和发展起来。地理信息系统研究计算机技术和空间地理分布数据的结合,通过一系列空间操作和分析方法,为地球科学、环境科学和工程设计,乃至企业管理提供对规划、管理和决策有用的信息,并回答用户所提出的有关问题。 地理信息系统目前发展已相当成熟,国外高水平软件分别有ARC/INFO、MAPINFO等;同时国内高水平软件也较多,尤其以中国地质大学(武汉)研制的MAPGIS最为先进,其功能达到甚至超过国外同类软件的水平,而且为我国自主开发、自主版权的纯中文软件。本次软件的开发所采用的地理信息系统平台是MAPGIS平台。该平台在十几年数字制图软件开发的基础上,开发成为GIS软件以及GIS应用系统。目前该地理信息系统已达到国际先进水平。1997年、1998年、1999年、2000年连续全国评测第一。目前,在该原型系统的基础上目前已完成了管网系统、警用电子地图系统、作战指挥系统、城市规划建设系统、旅游系统等一系列应用系统的开发。MAPGIS地理信息系统适用于地质、矿产、地理、测绘、水利、石油、煤炭、铁道、交通、城建、规划及土地管理专业。 MAPGIS是具有国际先进水平的完整的地理信息系统,它分为"输入"、"图形编辑"、"库管理"、"空间分析"、"输出"以及"实用服务"六大部分,共计十六个子系统。功能十分强大,而且好懂易用,界面友好,兼容性教好。 因此本GIS浏览器采用MAPGIS的二次开发,为MAPGIS浏览器。</P> <P>二、MAPGIS浏览器的开发目的 MAPGIS既然具有那么多的好处,功能又是如此的强大,那为什么还要似乎多此一举地开发什么MAPGIS浏览器呢? 首先,经济方面问题。MAPGIS本身的功能是十分的强大,而且应用又非常广泛,但是这种专业性极强的软件的价钱也是很可观的。并不是每个人都能买得起该软件。 其次,用途方面问题。花那么多的钱买功能这么强大的软件究竟要干什么,是否能够用到其中的全部功能或者大部分功能。显而易见,大多数的单位或者个人只能用到其中的一部分功能,甚至有的单位只用其中的一小部分功能。 近日,笔者一直在进行着的MAPGIS的二次开发就是一个与上述很相似的问题。该软件只是负责浏览MAPGIS绘制的地图,因而不需要MAPGIS这个庞大的系统来支持,只需要一个MAPGIS的浏览器即可。这就是为什么要开发MAPGIS浏览器的原因。</P> <P>三、系统浏览器的组成 本系统浏览器以MAPGIS的图形库作为底层支持,主要由文件输入、图形浏览、查询、工具、其它等几个模块组成。下面分别叙述。 (一)、文件输入 该部分功能为将各图件的组成,如点、线、面等三类文件以工程文件形式输入浏览器。 文件输入以菜单事件驱动,当点击各图形对应的菜单时,即调入相应的项目文件,将项目文件中所含的图形组成部分全部读入计算机内,立即显示。 各项目文件格式为:如XXX.PRJ项目文件内容: 1、 图形库组成文件数:N 2、 区图元文件:XXX.WP 3、 线图元文件:XXX.WL =N 4、 点图元文件:XXX.WT 格式中区、线、点图元文件各点一行,总数为N。区、线、点图元文件不一定齐全,例如,可以只有区程线图元文 件。 该种格式的方便之处在于,图库的变化只需修改项目文件即可,无需重新修改软件代码。 (二)、图形浏览 图形浏览一方面浏览图形,另一方面浏览图形的属性信息。该部分功能具有浏览单点图元文件点图元文件点图元文件一或多个属性的能力,以及选择图形工作区和图漫游。 图形浏览菜单下内容,其中有: 1、 浏览属性 点击此项菜单时,弹出所有图元文件,可任意选择需要浏览的图形,及其属性。选择后立即弹出一属性表单,表单中各子图元与图形联动,一但属性表单中某项被选中,相应的图形立即位于窗口中心闪烁显示,选择图形也可联动,十分方便于浏览全部图形与属性。 2、 浏览单个属性 此项为浏览单个图形的属性,使用时先选择单个工作区,双击所需浏览的图形,被选择者即以闪烁方式显示,同时弹出其属性。 3、 停止闪烁 单击时可终止点、线、区或全部正在显示的图形。 4、 图形漫游 选择该项后,移动鼠标图形可随之移动,呈漫游状态显示。 5、 选择工作区 即选择点、线或者区进行显示,可突出个别图形。 (三)、查询 该部分具有点、线、面的查询能力,并能对点线面按其属性进行查询、提取保存,十分方便于专业性应用;同时查询结果能与数据库相关联,从数据库中查询更丰富的资料。 查询菜单项包括点线面查询与提取,两者均通过对话框输入条件进行查询与提取。 (四)、工具 工具部分主要为图形显示操作。 该工具对图形窗口进行操作,如放大、缩小、移动窗口等。上级窗口为恢复前一次窗口形式;复位窗口则自动将图形大小恰好显示于窗口中;更新窗口则用于将窗口刷新显示;清窗口使窗口内容全部清除。 (五)、其它 该部分为辅助功能,可分别单个输入点、线、面文件,以及面积、周长、长度统计。 输入点、线、面文件:用于输入其它点、线、面图形文件,方便于浏览其它图形文件,同时可使用该浏览器的其它功能。 面积、周长、长度统计:该统计功能适用于快速计算区域面积、周长,以及线段(如河流、道路等)的长度。</P> |
|
|
1楼#
发布于:2010-01-02 09:16
<img src="images/post/smile/dvbbs/em01.gif" />
|
|
2楼#
发布于:2009-08-27 19:32
xinku le <img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em05.gif" />
|
|
3楼#
发布于:2008-05-23 08:39
<img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em05.gif" />
|
|
4楼#
发布于:2008-01-05 14:06
顶一个
|
|
5楼#
发布于:2007-05-01 18:48
谢谢啦
|
|
6楼#
发布于:2007-05-01 10:25
<P><FONT color=#386490>hao dongxi</FONT></P>
|
|
7楼#
发布于:2007-04-06 01:21
<img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em02.gif" />
|
|
8楼#
发布于:2007-02-15 23:06
<img src="images/post/smile/dvbbs/em05.gif" /><img src="images/post/smile/dvbbs/em06.gif" />
|
|
9楼#
发布于:2007-02-15 19:04
如果不用API就更好了
|
|
上一页
下一页