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范围属性控制。

《ArcGIS Runtime SDK for Android开发笔记》——问题集:.geodatabase创建,创建时内容缺失问题总结的更多相关文章

  1. 《ArcGIS Runtime SDK for Android开发笔记》

    开发笔记之基础教程 ArcGIS Runtime SDK for Android 各版本下载地址 <ArcGIS Runtime SDK for Android开发笔记>——(1).And ...

  2. 《ArcGIS Runtime SDK for Android开发笔记》——离在线一体化技术:概述

    1.前言 数据生产和数据展示是常见的两大专业级移动GIS应用场景,这里我们针对数据生产环节的ArcGIS的离在线一体化技术给大家做一个基本的介绍和梳理. 使用ArcGIS离在线一体化技术首先需要以下基 ...

  3. 《ArcGIS Runtime SDK for Android开发笔记》——离在线一体化技术:离线矢量数据同步

    1.前言 上一篇文章中我们实现了离线要素的编辑操作,这一篇中主要介绍离在线一体化技术中最后一个环节离线数据的同步功能,通过对数据的上传,服务器端的版本化管理,实现数据生产管理的整个流程. 转载请注明出 ...

  4. 《ArcGIS Runtime SDK for Android开发笔记》——(7)、示例代码arcgis-runtime-samples-android的使用

    1.前言 学习ArcGIS Runtime SDK开发,其实最推荐的学习方式是直接看官方的教程.示例代码和帮助文档,因为官方的示例一般来说都是目前技术最新,也是最详尽的.对于ArcGIS Runtim ...

  5. 《ArcGIS Runtime SDK for Android开发笔记》——(5)、基于Android Studio构建ArcGIS Android开发环境(离线部署)(转)

    1.前言 在上一篇的内容里我们介绍了基于Android Studio构建ArcGIS Runtime SDK for Android开发环境的基本流程,流程中我们采用的是基于Gradle的构建方式,在 ...

  6. 《ArcGIS Runtime SDK for Android开发笔记》——(6)、基于Android Studio的ArcGIS Android工程结构解析

    1.前言 Android Studio 是第一个Google官方的 Android 开发环境.其他工具,例如 Eclipse,在 Android Studio 发布之前已经有了大规模的使用.为了帮助开 ...

  7. 《ArcGIS Runtime SDK for Android开发笔记》——(9)、空间数据的容器-地图MapView

    1.前言 在上一篇内容里介绍了 关于ArcGIS Android开发的未来(“Quartz”版Beta)相关内容,期间也提到了关于API接口的重构,开发思路的调整,根据2015UC资料也可以知道新版预 ...

  8. 《ArcGIS Runtime SDK for Android开发笔记》——(4)、基于Android Studio构建ArcGIS Android开发环境

    1.前言 2015年1月15日,发布ArcGIS Runtime SDK for Android v10.2.5版本.从该版本开始默认支持android studio开发环境,示例代码的默认开发环境也 ...

  9. 《ArcGIS Runtime SDK for Android开发笔记》——(15)、要素绘制Drawtools3.0工具DEMO

    1.前言 移动GIS项目开发中点线面的要素绘制及编辑是最常用的操作,在ArcGIS Runtime SDK for iOS 自带AGSSketchLayer类可以帮助用户快速实现要素的绘制,图形编辑. ...

  10. 《ArcGIS Runtime SDK for Android开发笔记》——(11)、ArcGIS Runtime SDK常见空间数据加载

    ArcGIS Runtime SDK for Android 支持多种类型空间数据源.每一种都提供了相应的图层来直接加载,图层Layer是空间数据的载体,其主要继承关系及类型说明如下图所示: 转载请注 ...

随机推荐

  1. freemarker常用标签解释遍历

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...

  2. (转)TestNG框架提供两种传入参数的方法:

    1.从testng.xml传入参数. 如果参数是一些简单的值,可以直接在testng.xml中定义.这也是最常用的一种. 可以在测试用例中给参数一个默认值.这样,即使在xml文件中没有这个变量,你的测 ...

  3. Mybatis学习笔记(五) —— Mapper.xml(输入映射和输出映射)

    一.parameterType(输入类型) 1.1 传递简单类型 <!-- 根据用户id查询用户 --> <select id="queryUserById" p ...

  4. [Leetcode]017. Letter Combinations of a Phone Number

    public List<String> letterCombinations(String digits) { LinkedList<String> ans = new Lin ...

  5. Codeforces Round #316 (Div. 2) A

    Description The country of Byalechinsk is running elections involving n candidates. The country cons ...

  6. js遍历table和gridview

    //遍历table var tableObj = document.getElementById("tableName");var str = "";for(v ...

  7. 两个数据库通过DataTable实现差异传输

    两个主要方法 /// <summary>/// 用途:/// 用源表和目标表比较,返回差异的数据(目标表为参照物)/// /// 逻辑:/// 1.合并两个表/// 2.循环合并后得到的表 ...

  8. eclipse安装阿里规范模板

    https://github.com/alibaba/p3c/tree/master/p3c-formatter 1.代码模板(含注释等) 2.代码格式化

  9. 用HTMLParser解析html时报错:No module named 'htmlentitydefs'

    python3.6用HTMLParser解析html时报错 No module named 'htmlentitydefs'或No module named 'markupbase' 先上代码 fro ...

  10. py---------面向对象基础篇

    引子 你现在是一家游戏公司的开发人员,现在你需要开发一款叫做<人猫大战>的小游戏,你就思考呀,人猫大战,那至少需要两个角色,一个是人,一个是猫,且人和猫有不同的技能,比如人拿棍打狗,狗可以 ...