空间查询是
地理信息中的一个概念,指的是通过空间数据进行空间数据库的查询操作。
ArcGIS
在
10.2.2
的版本发布了
.geodatabase
数据,其本质上就是一个轻量级的空间数据库,并通过发布了
ArcGIS Android 10.2.9
的
API
,使得
Android
设备可以直接该
API
实现空间查询的功能。
首先我们先看下官方文档对于空间查询提供的工具:
可以看到这个ArcGIS 10.2版本以后新增的一个包,包含了四个类,分别应用于:
- OutStatistics:用来定义一个或多个领域的统计数据的计算;
- QueryParameters:类在支持查询的图层或表上保存查询参数,在本地或访问服务上执行;
- QueryTask:用于在ArcGIS Server服务的图层或表资源上执行“查询”和“查询相关记录”操作;
- RelatedQueryParameters:这个类是用来建立一个在对应图层/表查询相关记录的操作的参数。
其实这个和之前的query
包很相似,不过那个
query
包换到
ags
目录下了。然后这四个类里,和我们离线空间查询相关的主要就是Q
ueryParameters
类了。我们可以看看对于这个类的官方解释为:
简单翻译下,就是该类可以用来设置查询参数用来进行离线或者在线的空间查询,使用时候,需要先
对QueryParameters实例填充所需的查询参数,然后把这些参数传递给一个QueryTask实例或者一个对GeodatabaseFeatureTable类查询方法。然后就是可以定义的参数包含:
- WHERE子句
- 是否在结果集里必须包含与每个结果相关联的空间数据
- 要返回结果集中包含的字段列表
- 要查询的这个图层/表的对象的ID
- 响应是否应该只包含对象ID数组或其他特性集。
- 搜索文本
- 作为空间查询条件的空间数据
- 和输入的空间数据存在某种空间关系
- 输入空间数据的空间参考系</