Select to view content in your preferred language

how to zoom out selected layers

620
0
04-19-2011 10:52 PM
VikramTripathi
Deactivated User
Hi

i am using arcDynamicMapServices for developing application, in our arcGIS server. i want to zoom my map as per my layer value (like block='0001'),
m attaching code which i made.


<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
      xmlns:s="library://ns.adobe.com/flex/spark"
      xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:esri="http://www.esri.com/2008/ags">

<fx:Script>
  <![CDATA[
   import com.esri.ags.events.LayerEvent;
   import com.esri.ags.geometry.Extent;
   private var location:ArcGISDynamicMapServiceLayer=new ArcGISDynamicMapServiceLayer();
   private var lyrDef:Array;
  
   private function zoomToBlock(){
    lblMsg.text='Zooming to Block..';
    lyrDef = ["DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'",
     "DIST_CODE='31' AND BLOCK_CODE ='"+txtDisrictId.text+"'"];
    dynServMap.layerDefinitions=lyrDef;
    //location.layerDefinitions=lyrDef;
    //location.addEventListener(LayerEvent.LOAD,completeHandler);
   
   
   }
   private function completeHandler(evt:LayerEvent){
    var dynLyr:ArcGISDynamicMapServiceLayer;
    dynLyr=evt.layer as ArcGISDynamicMapServiceLayer;
    myMap.extent=dynLyr.fullExtent;
   }
  ]]>
</fx:Script>
<s:layout>
  <s:VerticalLayout/>
</s:layout>
<s:controlBarLayout>
  <s:HorizontalLayout gap="10"
       horizontalAlign="left"
       paddingBottom="7"
       paddingLeft="10"
       paddingRight="10"
       paddingTop="7"/>
</s:controlBarLayout>
<mx:ControlBar >
  <s:Button id="btn1" label="Select Layer" click="zoomToBlock()"/>
  <s:TextInput id="txtDisrictId" text="0001"/>
  <s:Label id="lblMsg"/>
</mx:ControlBar>
<esri:Map id="myMap">
  <esri:infoWindowContent>
   <mx:TextArea id="myTextArea"
       width="250" height="75"/>
  </esri:infoWindowContent>
  <esri:ArcGISDynamicMapServiceLayer
   id="dynServMap"
   url="http://10.131.2.64:8080/GeoServiceRest/services/ModifiedGeoApproach/MapServer"
   visible="true">
   <esri:visibleLayers>
    <s:ArrayCollection>
     <fx:Number>8</fx:Number>
     <fx:Number>9</fx:Number>
     <fx:Number>10</fx:Number>
    </s:ArrayCollection>
   </esri:visibleLayers>
  </esri:ArcGISDynamicMapServiceLayer>
 
</esri:Map>
</s:Application>


dear sir from above code i can select map in same extents,
but i want to zoom it in center in full extent of selected layer.
Tags (2)
0 Kudos
0 Replies