浅谈ArcGIS Runtime SDK for Android中数据的查询检索方式

       众所周知,在GIS中,查询检索分为许多种,如的属性查询,通过SQL语句查询属性表然后得出符合条件的空间要素结果,还如基于几何要素的几何查询,通过一个由用户绘制的或图中要素轮廓的几何图形,通过给定空间关系查询出与几何图形形状相关联的空间要素结果。在ArcGIS Runtime SDK for Android中,同样也有类似的分类,但也有些许的不同:

一、根据查询作用对象分类

1、针对MapView地图控件的查询

       针对MapView地图控件的查询有另一种名称,叫做identify交互式几何查询,顾名思义,就是通过触摸点击屏幕、找到手指点击范围内的地理要素,又分为:

      (1)基于Layer的查询,查询的对象为Feature要素,主要通过mMapView.identifuLayerAsync方法进行查询,可以设置目标FeatureLayer也可以不进行设置。

      (2)基于GraphicsOverlay的查询,查询的对象为Graphic图形,主要通过mMapView.identifyGraphicsOverlayAsync方法进行查询。

             

2、针对Feature要素的查询

      针对Feature要素的查询,又分为:

      (1)针对FeatureLayer的查询,主要通过mFeatureLayer.selectFeaturesAsync方法进行实现。

扫描二维码关注公众号,回复: 3081019 查看本文章

      (2)针对FeatureTable的查询,主要通过mFeatureTable.queryFeaturesAsync方法进行实现。

        两种查询方式中,虽然两者的查询结果完全相同,由于ArcGIS Runtime SDK for Android中数据加载方式的原因,针对FeatureLayer的查询应用较广,而且相比于针对FeatureTable的查询,它的查询方法多了一个参数,用于设置Select模式,分别是ADD,NEW和SUBTRACT,代表向选择集增加图形,新建选择集以及删除当前选择集图形。

二、根据查询方法,又可分为Query查询、Select查询、Identiy查询

    (1)Select查询,即mFeatureLayer.selectFeaturesAsync方法,针对要素图层(FeatureLayer)进行查询,还可进行选择集操作。

    (2)Query查询,即mFeatureTable.queryFeaturesAsync方法,针对要素表(FeatureTable)进行查询。

      (3)   Identify查询,即mMapView.identifuLayerAsync方法,针对MapView控件进行查询。

三、根据查询类型,可分为属性查询、几何查询、时态查询、统计查询

     (1)属性查询,根据where子句设置筛选条件进行查询。

     (2)几何查询,根据几何图形以及空间关系进行查询。

     (3)时态查询,根据时间范围(TimeExtent)进行要素时间的查询。

     (4)统计查询,根据筛选条件查询结果进行统计分析。

注:对于在线数据,其数据表对象为ServiceFeatureTable类型(FeatureTable的子类)。

相关实例(更新中。。。。)

 ArcGIS Runtime SDK for Android 入门(16):对地图中的图层进行identify交互几何查询

 ArcGIS Runtime SDK for Android 入门(15):对地图中的图形进行identify交互几何查询

 ArcGIS Runtime SDK for Android 入门(14):Feature要素的属性查询

         

       

猜你喜欢

转载自blog.csdn.net/Smart3S/article/details/81186175