您的位置:首页 > 移动开发 > Android开发

《ArcGIS Runtime SDK for Android开发笔记》——数据制作篇:.geodatabase创建,创建时内容缺失问题总结

2015-10-10 21:35 627 查看

1、前言

利用ArcGIS桌面提供的share as -> ArcGIS Runtiem Content工具在导出.geodatabase文件时经常会发生数据缺失问题,比如数据表中数据有4w多条,但是导出成Geodatabase时,有时候就会发现数据只有1w多条,数据丢失,那这个数据去哪了呢?为啥会有丢失?之前也是没有深究过这样一个问题,也不是很清楚确切的问题点在哪里,就是简单的知道将当前可视区域覆盖全部地图,就可以将数据全部导出了,大概猜测是可视区域的问题。今天针对这块仔细研究了下,做个简单的总结。

 转载请注明出处:http://www.cnblogs.com/gis-luq/p/4867251.html

2、问题研究

在ArcMAP中导出.geodatabase格式的矢量数据一般来说共有两种方式:(好像还有Python脚本生成具体没研究过)
方式一:利用File -> Share As ->ArcGIS Runtime Content导出



方式二:使用工具箱中的System Toolboxes -> Data Management Tools ->Package -> Create Runtime Content





这两种方式之间有什么区别呢?

方式一:导出范围默认为当前可视区域。 方式二:导出范围默认为全图,可以依据Extent范围选择。

对于方式一笔者做了以下测试:

首先全图范围如图1所示,将地图放大到图2的情况,保存地图文档(.mxd)。接着打开File -> Share As ->ArcGIS Runtime Content工具,在弹出的窗口中,ArcGIS Runtime Content选项卡内设置文件存储路径,Feature and Tabular Data选项卡内设置设置导出所有数据选项(全部导出)。导出完成之后,我们会获得一个后缀为.geodatabase的文件。该文件可以利用工具箱内的Copy
Runtime Geodatabase to File Geodatabase工具导出成FileGDB,将导出结果与原始结果叠加得到了如图3的显示效果,这也说明了为啥我们使用方式一导出数据经常会有数据缺失的情况。原因是以当前可视区域做了限制。




 




 
对于方式二,设置过程比较简单按照说明提示设置就好,其中有一个需要注意的参数就是Extent范围参数(指定用于选择或裁剪要素的范围)。
Default——默认 - 该范围将基于所有参与图层的最大范围设定。这是默认设置。
Union of Inputs——输入的并集 - 所有输入的最大范围。
Insersection of Input——输入的交集 - 所有输入共用的最小范围。
As Specified Below——如下面的指定 - 指定最小和最大范围值。
Same as Display——与显示相同 - 范围等于数据框或可见显示范围。
 

3、问题总结

方式一:利用File -> Share As ->ArcGIS Runtime Content导出当前可视区域内要素。

方式二:使用工具箱中的System Toolboxes -> Data Management Tools ->Package -> Create Runtime Content默认导出所有要素,具体可以更具Extent范围属性控制。

 

同步博客:http://www.cnblogs.com/gis-luq​
作者:gis-luq
邮箱:luqiang.gis@foxmail.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: