一种移动GIS离线数据采集的方法
来源:互联网 发布:全日制本科助学班 知乎 编辑:程序博客网 时间:2024/05/22 08:27
1、 目的及意义
离线情况下的数据采集非常重要,可以突破网络限制、降低数据流量、扩张采集范围和提高工作效率。
2、 技术架构
2.1 技术概念
离线数据分为两类:矢量底图离线数据和矢量业务离线数据。底图离线数据主要有松散图片、bundle文件和tpk文件几种类型,目前基于ArcGIS runtime for Android/ios都可以在移动端上离线加载,且实现方法都已经很成熟,如下图所示:
矢量业务离线数据主要存储方式是shapefile、json、FeatureLayer、嵌入式数据库(如Spatialite)等。通过FeatureLayer和ArcGIS runtime提供的功能,我们可以轻松实现在线的数据采集功能,但是要实现离线数据采集功能,就必须实现这些业务离线数据的数据操作(增删改查)和数据同步功能。 Spatialite是一种基于C\C++的跨平台嵌入式数据库,支持空间数据,遵循OGC Simple Feature Access标准,如WKT、WKB、Geometry格式和空间关系处理(Spatial Relational Operators)。
2.2 架构图
为了实现离线数据采集功能,首先需要用同步工具将空间数据成果库或者其子库的内容加密后导入移动终端。由于企业级离线数据采集的数据量较大,本方法选择嵌入式数据库Spatialite存储离线业务数据。 在移动端我们通过ArcGIS runtime for Android/ios和扩展的Spatialite API读取和操作(增删改查)离线数据包,完成移动端的数据采集功能。最后我们再通过数据同步工具将采集的数据同步到ArcGIS数据成果库或者其子库。本解决方法的架构图如下图所示:
3、 关键技术
3.1 数据同步
通过ArcGIS 的AO组件,并遵循OGC标准,可以实现GDB数据和Spatialite数据的互相转换。如下图所示:
能够实现GDB数据和Spatialite数据相互转换的关键是采用符合OGC标准的WKB空间数据格式。
基于这种标准的WKB空间数据结构,可以实现从ArcGIS Geodatabase 数据到Spatialite数据库支持的WKB数据的转换。
1)几何信息点:Ipoint与wkbpoint转换
2)几何信息线:IPolyline 与wkbLineString转换
3)几何信息面:IPolygon与wkbPolygon转换
数据转换技术路线图如下:
数据转换界面如下图所示:
3.2 移动端数据编辑
基于ArcGIS runtime和Spatialite API,可以离线编辑WKB数据,实现完全离线下的数据采集。 编辑工具提供添加、删除、更新和查询数据接口。 移动端数据采集界面示例图如下图所示:
- 一种移动GIS离线数据采集的方法
- 公众用移动端采集GIS数据的好处
- PDA+CORS提高移动GIS的数据采集精度
- 一种matlab调用signaltap采集数据的方法
- 什么是GIS数据采集系统
- 【移动GIS】离线地图ZIP格式设置
- 【移动GIS】MBTiles离线地图设置
- 一种更新数据的方法
- 基于Arcgis for Js的web GIS数据在线采集简介
- 敏捷方法中采集的度量数据
- 敏捷方法中采集的度量数据
- 常见数控机床的数据采集方法比较
- PHP数据采集常用的方法
- 在ns2上实现移动汇聚节点的数据采集
- 基于winform的GIS离线地图
- GIS矢量数据化简:一种改进的道格拉斯-普克算法以及C++实现
- 一种面向电信行业基站数据的数据采集系统的设计与实现
- Android GIS数据采集软件介绍 ---穆采
- 互联网史话---十亿美金在云上
- UVA 10008 - What's Cryptanalysis?
- 华为云服务(HWClouds)之对象存储服务试用
- 报表导出Excel 二 :将业务报表数据写入特定Excel模板
- 华为Y300-0000手机解锁Bootloader步骤
- 一种移动GIS离线数据采集的方法
- NYOJ 22素数求和
- delete 分批提交删除数据表记录
- 【C开发】无限循环 while(1) 和 for(; ;)
- 关于IOS的Autolayout特性的理解以及使用
- The Meaning of Class Definitions
- 华为Y300如何root
- Error hnk2005:exist already defined in msvcrt.lib(MSVCR100.dll)_LIBCMTD.lib 解决方案
- Android连接SQLServer详细教程(数据库+服务器+客户端)