MAPGIS二次开发讲义

MAPGIS二次开发讲义
成熟实用的地理信息系统(GIS)的重要标志就是它提供给用户的二次开发能力。MAPGIS提供完整的二次开发函数库。用户完全可以在MAPGIS平台上开发面向各自领域的应用系统。操作系统、MAPGIS开发库及MAPGIS应用程序的相互关系如下图所示:MAPGISMAPGIS应用程序空间分析窗口操作…图库操作图形、图象I/O开发库工作区管理MAPGIS二次开发函数库包括下表所列部分,这些库函数都支持Window3.某,Window95和NT操作系统。MAPGIS二次开发函数库支持的语言包括Borlandc++,Viualc++,Viualbaic等高级语言程序设计环境。
函数库名称动态库文件32位函数库(支持Window95,NT)c,c++连接文件工作区基础函数图形显示输出工作区管理函数图形窗口操作空间分析函数地图库读取显示图形编辑函数ba32.dllMapdp32.dllw32_area.dllW32_oper.dllW32_anly.dllD32_view.dllMaped32.dllBa32.libMapdp32.libW32_area.libW32_oper.libW32_anly.libD32_view.libMaped32.lib表1MAPGIS函数库
c,c++说明文件Win_area.hMap_out.hWin_area.hWin_oper.hSpc_anly.hDb_view.hMapedit.hvb说明文件W3
2_area.baMapdp32.baW32_area.baW32_oper.baW32_anly.baMaped32.baWindow3.某、Window95、WindowNT基于MAPGIS平台的应用程序
MAPGIS二次开发函数采用匈牙利命名法,即动宾结构命名法,并且所有函数都以下横线开始,以便和Window函数以及其他语言函数明显区别开来,如_GetLin表示取线实体;在ViualBaic环境下,由于ViualBaic语言不能识别以下横线开始的函数名,所以库函数都以字母b开始,如bGetLin表示取线实体。
上述动态函数库提供了从最基本数据单元的读取、保存、更新和维护到MAPGIS地图库的建立和漫游,以及空间分析,图象处理等一系列功能,MAPGIS应用程序可以根据需要在任何层次上进行开发。除了上述API函数外,MAPGIS还为基于MFC(MicrooftFoundationCla)的开发者提供多个可重用基类,将应用程序所需的常见基本功能作了封装,使用便利,改动灵活。
二、MAPGIS的数据组织
工作区
工作区是MAPGIS提出的一个概念,简单地说,工作区就是一个数据池,存放实体的空间数据、拓扑数据、图形数据和属性数据,每个工作区都对应于一个MAPGIS数据文件。MAPGIS开发函数库提供对工作区实施操作的一系列函数,如将工作区中的内容存盘,从盘上将数据装入工作区,对工作区中内容进行添加、修改、删除、检索等等。对硬盘数据的存取及虚拟内存的管理等等复杂繁琐的工作无需应用程序的编写者去关心,而是由MAPGIS工作区管理模块自动完成。如图1-2所示。由此可见,深入了解工作区的逻辑结构和工作区操作函数的使用,是进行成功的二次开发的关键。MAPGIS应用程序
工作区管理模块的地位
工作区API函数界面工作区管理模块工作区(空间数据、图形数据及属性数据)
gis地图制作的空间实体的类型不同。详见下表:
工作区类型点工作区(.WT文件)线工作区(.WL文件)区工作区(.WP文件)网工作区(.WN文件)表工作区(.WB文件)
实体类型点(PNT)线(LIN)、结点(NOD)线(LIN)、结点(NOD)、区(REG)线(LIN)、结点(N
OD)、网(NET)无空间实体,仅有表格记录各类工作区中可以包含的实体类型
由于不同种类的工作区中空间实体的类型不同,各类型的工作区所适用的数据操作函数
也就不同。例如,对点工作区只能使用操作点实体数据的函数;而对区工作区则可对线、结
点和区实体的数据进行操作。
空间实体及其数据组织
空间实体是MAPGIS数据操作的基本单位,在一个工作区中,一类实体可有多达2G的个

本文发布于:2024-09-21 13:51:07,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/388382.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:工作   函数   操作   数据   实体   应用程序
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议