IdentifyTask
是一个可以识别要素的任务.
我们设想的功能大概是这样的:先在地图上画一个多边形,然后识别多边形内的所有要素,最后在图上标注出来。让我们看一下这个功能在Flex中是如何通过Task执行完成的:
首先是绘图,我首先需要在地图上画一个多边形,在ArcGIS API for Flex中有一个提供绘图的工具条com.esri.ags.toolbars.Draw,通过它我们可以很轻松地实现绘图功能:
如上所示,IdentifySample在Draw对象上添加一个事件监听器,当绘图完成时,执行drawEndHandler()方法,在这个方法中,我们将继续绘图以后的工作。
在已经绘制了一个多边形以后,我们就需要执行IdentifyTask来进行要素识别了。先看一下代码:
private function drawEndHandler(event:DrawEvent):void
{
var geometry : Geometry = event.geometry;
var identifyParams : IdentifyParameters = new IdentifyParameters();
identifyParams.returnGeometry = true;
identifyParams.tolerance = 3;
identifyParams.width = 600;
identifyParams.height = 550;
identifyParams.geometry = geometry;
switch (layerOption.value)
{
case "top":
identifyParams.layerOption = IdentifyParameters.LAYER_OPTION_TOP;
break;
case "visible":
identifyParams.layerOption = IdentifyParameters.LAYER_OPTION_VISIBLE;
break;
case "all":
identifyParams.layerOption = IdentifyParameters.LAYER_OPTION_ALL;
break;
}
identifyParams.mapExtent = map.extent;
identifyTask.execute( identifyParams );
}
在 DrawEvent对象中,我们可以获取刚才绘图的Geometry对象,这个Geometry对象用于Identify的参数设置中,如果你做过 ArcEngine开发,你可以对比一下SpatialFilter。好,再设置了一下需要搜索的图层和范围以后,你就可以执行这个 IdentifyTask了,看到execute是不是很兴奋?
然后呢?我们回头看看这个IdentifyTask的定义,其中注册了当Task完成时候执行的方法:identifyCompleteHandler()。
private function identifyCompleteHandler(event:IdentifyEvent):void
{
for each (var result:IdentifyResult in event.identifyResults)
{
myGraphicsLayer.add(result.feature);
}
}
这个方法就是在GraphicLayer上把这个Task的结果画出来。
分享到:
相关推荐
- **Identity**: 用于唯一标识一个对象,是位置参数,可以在不指定参数名的情况下使用。 - 示例: `Get-Mailbox user1`等同于`Get-Mailbox -Identity user1` - **WhatIf**: 模拟命令执行的结果,但不会实际执行任何...
8. **jbpm-human-task-service.jar**:针对人类参与的任务管理,提供与任务相关的服务,如任务分配、任务通知等。 9. **jbpm-gwt-console-server.jar**/ **jbpm-gwt-console-client.jar**:这两者是jbpm的Web控制台...
public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager) { // 更多代码... } // 自定义属性... } ``` 创建好上下文和用户类后,就可以在控制器或服务中使用`...
移动众包是一种新兴的模式,它集合了携带移动设备的一群工作人员,共同协作完成任务发布者所委托的艰巨任务。这种模式日益受到关注,因为它能够高效地利用大众的力量,解决传统单一资源难以解决的问题。...
本文提出的TADAM模型(Temporal-Aware Distractor and Identity-Aware Memory Aggregation Model,时间感知干扰和身份感知记忆聚合模型)引入了协同机制,将位置预测和身份关联紧密结合起来。通过时间感知的注意力...
身份框架(ASP.NET Identity)则为应用程序提供了用户认证和授权服务。它支持多种身份验证模式,如本地账户、OAuth、Facebook、Google等社交登录。在任务管理应用中,身份框架确保了只有经过身份验证的用户才能访问...
在ASP.NET Core 2.0中,开发人员通常使用Identity框架来处理用户认证和授权。Identity是一个内置的用户管理解决方案,但它默认依赖于Entity Framework (EF)进行数据存储。然而,在某些情况下,开发者可能更倾向于...
- **ACT_ID_**:这部分表涉及用户的认证和授权信息,由 IdentityService 接口进行操作。 - **ACT_HI_**:这部分表用于记录历史数据,如已完成的流程实例、任务等。这些表由 HistoryService 接口进行管理。 - **ACT_...
- **Identity Service**:处理用户和组的管理,为任务分配提供基础。 5. **流程设计与执行** - 使用 Activiti Modeler 或其他 BPMN 工具设计流程图,保存为 BPMN 2.0 XML 文件。 - 在代码中部署流程定义,通过 `...
根据提供的文件内容,CISSP考试大纲主要分为以下几个领域(Domain),每个领域下都有多个任务(Task)和子任务(Subtask),涵盖了信息安全的专业知识和实践技能。 1. **安全和风险管理(Security and Risk ...
- **Identity**:用户和权限管理模块。 - **History**:记录流程的历史数据,便于审计和分析。 2. **流程实例和执行上下文**:Flowable Engine通过流程实例(Process Instance)和执行上下文(Execution)跟踪...
* ACT_RU_TASK:运行时任务 * ACT_RU_VARIABLE:运行时变量表 每个表中都有多个字段,用于存储不同的数据。例如,ACT_GE_BYTEARRAY表中有ID、REV、NAME、DEPLOYMENT_ID、BYTES、GENERATED等字段,用于存储流程定义...
在流程定义中,可以使用`<userTask>`元素并设置`assignee`属性为组的ID来分配任务给组。例如: ```xml <userTask id="taskForGroup" name="组任务" assignee="myGroupId"/> ``` `myGroupId`应替换为实际组的ID...
##### 2.7 历史流程人员表 (act_ru_identitylink) - **简要描述**:存储历史节点参与者的信息。 - **表结构说明**: - `ID_`: 主键。 - `GROUP_ID_`: 组ID。 - `TYPE_`: 类型。 - `USER_ID_`: 用户ID。 - `...
which indicate identity similarities, from raw pixels of face pairs with a hybrid deep network. The deep ConvNets in our model mimic the primary visual cortex to jointly extract local relational ...
盛开 ``` bloom bloom is a command-line tool for executing tasks on groups of servers. ... -i --identity IDENTITY Path to identity file. -h --help Show this screen. --version Show version. ```
- **ACT_ID_**:ID表示Identity身份,主要保存用户、群组、关系等组织机构相关数据。 - **ACT_GE_**:GE表示General通用,属于一些通用配置。 - **其他**:ACT_EVT_LOG和ACT_PROCDEF_INFO没有遵循上述规则,分别属于...
- **Identity**:用于唯一识别命令操作的对象,常用于`Enable`, `Disable`, `Remove`, `Set`和`Get` cmdlet。 - **WhatIf**:在不实际执行操作的情况下,模拟命令的效果,帮助预览变更。 - **Confirm**:在执行...