1.QueryTask

QueryTask是一个进行空间和属性查询的功能类,它可以再某个地图服务的某个子图层内进行查询。QueryTask进行查询的地图服务并不是必须要加载到map中进行形式。QueryTask的执行需要两个先决条件:一个是需要查询的图层URL,一个是进行查询的过滤条件。

 

2.FindTask

FindTask是在某个地图服务中进行属性查询的功能类。FindTask与QueryTask的使用类似,当然,QueryTask在execute的时候需要给一个Query对象作为参数,FindTask则是给一个FindParameters对象作为参数。另外,FindTask的url属性需要指向所查询的地图服务的RSET URL,而不像QueryTask需要指定子图层的URL。

 

3.IdentifyTask

IdentifyTask是一个在地图服务中识别要素的功能类。当用户在客户端使用Draw工具绘制了一个几何对象以后,返个几何对象就可以作为IdentifyTask的参数发送到服务器上进行识别,满足条件的要素将会被输出到ArcGIS Flex Api中,同样,返回要素都可以作为Graphic呗添加到地图上。本功能可以实现:在地图上画一个图形,可以查询该图形覆盖的地图底图数据。

 

4.返回:

QueryTask返回的是一个FeatureSet

FindTask返回的是一个FindResults数组

IdentifyTask返回的是一个identifyResults数组。

 

4.QueryTask的基本语法结构

定义QueryTask     

  <esri:QueryTask id="queryTask"
            url="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer/5" />

        <esri:Query id="query" text="{qText.text}" returnGeometry="true" outSpatialReference="{map.spatialReference}">//text:查询的内容,returnGeometry:是否返回图形,空间参考
            <esri:outFields>//返回的数据字段
                <mx:String>MED_AGE</mx:String>
                <mx:String>POP2007</mx:String>
            </esri:outFields>
        </esri:Query>

//执行查询语句

 queryTask.execute(query)

 

posted on 2011-03-19 15:28  pandy  阅读(1452)  评论(0编辑  收藏  举报