ArcGIS中QueryTask,FindTask,IndentifyTask 之间的区别
不必项加载到Map中进行显示。QueryTask的执行需要两个先决条件:一个是需要查询的图层URL、一个是进行查询的过滤条件。 查询一个图层里面的数据:链
接如http://10.188.180.124:8399/arcgis/rest/services/123/MapServer/13 ,MS只可以查找唯一的数据;
2:FindTask是在某个地图服务中迕行属性查询的功能类。FindTask不QueryTask的使用徆类似,当然,QueryTask在execute的时候需要给一个Query对象作为参
数,FindTask则是给一个FindParameters对象作为参数。另外,FindTask的url属性需要指向所查询的地图服务的REST URL,而丌像QueryTask需要指定子图层的
URL。 可查询单图层和跨图层数据,输入查询的图层Layers;查询的字段名字Search Fields,查询的条件 Search Text,可以查询非唯一的数据。
3:IdentifyTask是一个在地图服务中识别要素的功能类。当用户在客户端使用Draw工具绘制了一个几何对象以后,返个几何对象就可以作为IdentifyTask的参数収送到
服务器迕行识别,满足条件的要素将会被输出到ArcGIS Flex API中,同样,返些要素都可以作为Graphic被添加到地图上。 本功能可以实现:在地图上画一个图形,
可以查询该图形覆盖的地图底图数据。 以上这些可以在http://10.188.180.124:8399/arcgis/rest/services/123/MapServer网页最下端Supported Operations详细查看。
QueryTask :还回的是 一个FeatureSet; Featureset.features[i]加入显示图层显示
FindTask:返回的是一个FindResults数组, FindResults【i】.feature加入显示图层显示
IdentifyTask:返回的是一个identifyResults[i];数组;identifyResults[i];【i】.feature加入显示图层显示
QueryTask 只能针对一个图层进行空间或属性查询
FindTask 对一个地图服务多个图层(全部,或者指定几个ID索引)做属性查询
Idientfiy 是对一个地图服务多个图层(全部,或者指定几个ID索引)做空间识别查询
上面其实已经叙述的很清楚了。在此加入一些更通俗易懂的说法:
QueryTask:查询的是featurelayer,可进行空间或者属性查询,也就是地图服务后面加上图层索引,
例如http://10.188.180.124:8399/arcgis/rest/services/123/MapServer/13
FindTask:查询的是地图服务,可以做属性查询,可以根据指定的图层索引查询具体的图层。
Idientfiy:查询的是地图服务,做空间识别查询,简而言之,框选范围,返回范围中所有要素。
最新文章
- linux yum命令详解
- ASP.NET Web API 配置 JSONP
- 睡觉问题早晚成为我顶头疼的问题。。。-PHP
- 关于服务器响应,浏览器请求的理解以及javaWeb项目的编码问题
- 【python PIL学习】给照片打水印
- C++-标准输入输出
- devexpress中gridcontrol 一些样式改变
- Automator 简单使用流程
- log4jdbc与logback集合打印日志过多的解决
- iscroll.js &; flipsnap.js
- MongoDB 安装(一)
- oracle 提示口令失效解决方法
- JS+PHP实现用户输入数字后取得最大的值并显示为第几个
- php基础-mysqli
- Java常见开发规范
- 深入浅出Tomcat/2 - Tomcat启动和停止
- flask get和post请求使用
- Python实例---模拟微信网页登录(day3)
- 解决Oracle登录极慢的问题
- Linux目录结构及文件基本操作