ArcGIS Api For Flex 动态画点和线

55 篇文章 0 订阅
28 篇文章 0 订阅

<?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:supportClasses="com.esri.ags.skins.supportClasses.*" minWidth="955" minHeight="600" xmlns:esri="http://www.esri.com/2008/ags"
      initialize="init()"
      >     
 <fx:Script>
  <![CDATA[
   import com.esri.ags.Graphic;
   import com.esri.ags.SpatialReference;
   import com.esri.ags.geometry.MapPoint;
   import com.esri.ags.geometry.Polyline;
   import com.esri.ags.layers.GraphicsLayer;
   import com.esri.ags.symbols.SimpleLineSymbol;
   import com.esri.ags.symbols.SimpleMarkerSymbol;

   import mx.controls.Alert;
   private var arr:Array=
    [new MapPoint(123.361328,41.265625,new SpatialReference(5326)),
     new MapPoint(123.720703,41.703125,new SpatialReference(5326)),
     new MapPoint(123.431641,41.320313,new SpatialReference(5326)),
     new MapPoint(123.646484,41.515625,new SpatialReference(5326)),
     new MapPoint(123.763272,41.734675,new SpatialReference(5326)),
     new MapPoint(123.248047,41.710938,new SpatialReference(5326)),
     new MapPoint(124.248047,42.510938,new SpatialReference(5326)),
     new MapPoint(123.748047,43.210938,new SpatialReference(5326)),
     new MapPoint(123.748047,43.210938,new SpatialReference(5326))
    ];
   private var polyine:Polyline=new Polyline();
   private var graphicsLayer:GraphicsLayer=new GraphicsLayer();
   private var grahpic:Graphic=new Graphic();
   
   private function init():void
   {
    graphicsLayer.add(grahpic);
    Map.addLayer(graphicsLayer);
   }      
   private function PlayPoint(e:MouseEvent):void
   {
    
    graphicsLayer.clear();
    var i:int=0;
    var timer:Timer = new Timer(1000, arr.length-1);
    timer.addEventListener(TimerEvent.TIMER, TimerMethod);
    timer.start();
    function TimerMethod(event:TimerEvent):void
    {
     var mps:Array=new Array;
     var mpStat:MapPoint=arr[i] as MapPoint;
     
     
     grahpic=new Graphic(mpStat,sps);
     
     graphicsLayer.add(grahpic);
     i=i+1;
    }
   }
   private function PlayLine(e:MouseEvent):void
   {
    
    polyine=new Polyline();
    var i:int=0;
    var timer:Timer = new Timer(1000, arr.length-1);
    timer.addEventListener(TimerEvent.TIMER, TimerMethod);
    timer.start();
    function TimerMethod(event:TimerEvent):void
    {
     var mps:Array=new Array;
     var mpStat:MapPoint=arr[i] as MapPoint;
     var mpEnd:MapPoint=arr[i+1] as MapPoint;
     mps.push(mpStat);
     mps.push(mpEnd);
     polyine.addPath(mps);
        
     grahpic=new Graphic(polyine,sls);
     
     graphicsLayer.add(grahpic);
     i=i+1;
    }
   }
     
   
  ]]>
 </fx:Script>
 <fx:Declarations>
  <!-- 将非可视元素(例如服务、值对象)放在此处 -->
  <esri:SimpleLineSymbol id="sls"
          width="3"
          color="0x00FF00"/>
  <esri:SimpleMarkerSymbol id="sms"
         color="0x00FF00"
         size="12"
         style="square"/>
  <esri:PictureMarkerSymbol id="sps" source="http://localhost/Red_glow.swf"  width="20" height="20" />
 
 </fx:Declarations>
 <esri:Map id="Map" >
  <esri:ArcGISDynamicMapServiceLayer url="xxx "/>

 </esri:Map>
 
  
 <mx:ControlBar  width="100%" top="0" left="0" paddingTop="0" paddingBottom="0"   horizontalAlign="left" >
  <mx:Button label="开始点轨迹"  width="100" fontSize="12" click="PlayPoint(event)"/>
  <mx:Button label="开始线轨迹"  width="100" fontSize="12" click="PlayLine(event)"/>
 </mx:ControlBar>

 
</s:Application>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值