利用eSupermap进行开发

2024-05-14 GIS 128
A⁺AA⁻

利用eSupermap进行开发

ArcPAD不同,eSupermap是完全基于C++的GIS软件开发包,在开发上也就不存在像ArcPAD Application Builder这样的RAD定制工具,必须要使用微软公司发布的Embedded VisualC++环境进行开发,这种方式的优点是非常灵活,用户可以从上至下地控制系统的结构和内容,但是缺点也显而易见,就是开发门槛过高。

eSuperMap的数据源为Supermap公司自行设计的PMF格式,PMF不依赖于任何数据库技术,文件紧凑,可移植性强,更适合在嵌入式设备上使用。一个PMF文件存放一个数据源、一个线型库、一个符号库和若干个地图。在eSuperMap中提供了一个专门用来转换地图数据的工具Toolkit,可以将PC上Supermap常用的SDB文件格式转换为PMF格式,此外还可以转换相关的图元信息,由此就可以保证PDA和PC上数据源的交互,转换完毕的数据可以使用eSupermap提供的PMFView进行査看和编辑。

利用eSupermap进行开发

在eSuperMap中,可以按逻辑关系把类库中的各个类分为几个大类,每个大类又可以根据具体的功能分为可以用编程语言(VC++/EVC++)描述的类。首先,把eSuperMap中的类分为以下七个大类。

(1)数据组织/数据访问相关类:负责从数据源中获取数据和组织数据,是eSupermap的核心类群。其中比较常用的类有: ①CSePMF,主要负责打开、读取、保存和删除数据源; ②CSeMaps,主要负责地图的创建、保存、修改、删除、添加、获取等操作; ③CSeDataSource,专门管理数据源,在其中又内置了专门处理数据源中各个数据集的CSeDataset; ④为了方便处理数据集中的各数据记录,又设置了专门处理各种记录的CSeRecordset。

微信号:MeetyXiao
添加微信好友, 获取更多信息
复制微信号

(2)地图显示/操作相关类:负责处理地图的绘制和放大缩小等浏览操作,同样是eSupermap中不可缺少的类群。其中,最核心的类为CSeMapWnd,它是eSuperMap类库的外在体现,大多数与地图显示相关的操作基本上都要通过它来实现,在CSeMapWnd中有保存着所绘图参数和 *** 的CSeDrawParameters类;用于显示活动的、相对位置不固定的、临时使用的实体的CSeTrackingLayer类,负责大多数的地图显示操作的CSeLayer。

(3)基本地图实体相关类: 负责专门描述eSupermap中的各类矢量几何实体,所有的类都由CSeGeometry这个抽象类继承下来。

(4)GPS类:eSupermap提供的专门对GPS模块信息进行读取和处理的类群。

(5)地图投影相关类:负责进行经纬度坐标与投影坐标之间的转换,和在不同大地参照系下的经纬度坐标之间进行转换。

(6)其他应用类:专门保留错误代码类、空间分析类、内存分配类等开发时经常需要用到的类。

(7)各类之间有相应的逻辑关系图,通过它们可以明确各类之间的逻辑关系,为工程应用中类库的正确使用打下基础。

来源:开源地理空间基金会中文分会

来源链接:https://www.osgeo.cn/post/1a64d

本站声明:网站内容来源于 *** ,如有侵权,请联系我们,我们将及时处理。

客服微信号码

客服微信号码

客服微信号码

客服微信号码

留言咨询
提交留言

您将免费获得

  • 全面诊断

    您将获得专家对您公司申请资质所需条件的全面诊断服务,我们不同于传统代办公司,仅是提供一些通用的,浅显的建议

  • 找出疏忽点

    我们在了解您公司的基本情况之后,将挖掘出您公司目前不利于资质申请的疏忽点,还将详细说明您在申请资质时应当改善的确切的事项。

  • 分析需求

    我们通过丰富的从业经验,结合目前的实际情况,确认好符合您实际经营情况的资质需求。

  • 定制方案与报价

    对您的需求深入了解后,将结合您公司目前的情况,我们将为您量身定制一份资质代办方案及报价单。

获取方案

×
请设置您的cookie偏好
欢迎来到资质参谋
我们希望在本网站上使用cookie,以便保障本网站的安全、高效运转及服务优化,有关我们使用cookie的更多信息,请点击查看了解更多。
接收Cookies
决绝Cookies