ArcGisServer Flex 地图查询

8 篇文章 0 订阅
7 篇文章 0 订阅

      下面我们通过 Flex和ArcGisServe 实现地图的查询,即图查属性。

       我们实现这么一个功能,用鼠标点击一下地图,然后显示地图上某一个点的详细信息。

/**
*   单击地图
* @param event
*/
private function OnmapClick(event:MapMouseEvent):void
{
    var myIdent:IdentifyTask=new IdentifyTask("http://www1.jiamap.com:8099/ArcGIS/rest/services/DL/MapServer");
    myIdent.addEventListener(IdentifyEvent.IDENTIFY_COMPLETE, MapClick_Handler);
// 先 idenfy
    var identifyParams:IdentifyParameters=new IdentifyParameters();
//查询结果需要返回Geometry
    identifyParams.returnGeometry=true;
    identifyParams.tolerance=20;
    identifyParams.width=map0.width;
    identifyParams.height=map0.height;
    identifyParams.geometry=event.mapPoint;
    identifyParams.layerIds=[1];
//查询可见图层
//identifyParams.layerOption=IdentifyParameters.LAYER_OPTION_VISIBLE;
    identifyParams.mapExtent=map0.extent;
//进行查询
    myIdent.execute(identifyParams);
}

 

OnmapClick 是地图单击事件,这个事件的参数里面,包含了一个图形信息:event.mapPoint,这个就是你单击地图那个位置的点。

  identifyParams.tolerance=20;  表标以这个点为中心 扩展20个像素进行查询。

  identifyParams.layerIds=[1];   表示在图层1里面进行查询。

  identifyParams.mapExtent=map0.extent;  表示查询的区域

   查询完成后,将通过 MapClick_Handler 返回,下面获取返回的结果

private function MapClick_Handler(evt:IdentifyEvent):void
{
    for each (var result:IdentifyResult in evt.identifyResults)
    {
        var p1:MapPoint=MapPoint(result.feature.geometry);  //得到返回图形的几何信息
        MyGraphic.visible=true;
        myPoint.x=p1.x;
        myPoint.y=p1.y;

       result.feature.attributes.guid_;      // 得到返回图形的 某个字段的值
      }
}


   好了,我们获得了,返回的图形的几何信息  以及它的字段对应的值。接下来,你想做什么事情都可以了。

   这个是图查属性。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值