arcgis api for flex 实例 earthquake map

上一篇 / 下一篇  2008-10-18 17:16:21 / 个人分类:mushup

arcgis api for flex 实例 earthquake map
6tO kfv+_ Hj0在中国汶川地震发生的时候,有人用google map 做了一个earthquake 捐款的map
F-zf;WFm0http://www.flex888.com/lab/grelief/srcview/index.html
V6Mq,H"j f0我使用arcgis api for flex重写了一下,作为一个例子展现给大家

3sNews.Net——3S社区&资讯平台;L cA)iyC/O9E r

9qal#I sx'c#t0Flash:gmap版3sNews.Net——3S社区&资讯平台)T J,F*PMRy6[_ ]W
3sNews.Net——3S社区&资讯平台 k+ON!v/]C4a5k9vC

I2^[)?1K,m"sS7~X0
:w%kYd h p6|O,Z0Flash:esri map 版
\xol3AtzU0

3sNews.Net——3S社区&资讯平台/iC+b} H~P9`~H#_
<?xml version="1.0" encoding="utf-8"?>3sNews.Net——3S社区&资讯平台 a(KhV4M UJ
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"3sNews.Net——3S社区&资讯平台x:Y8il$L c^7H&o
    pageTitle="Service Area"3sNews.Net——3S社区&资讯平台C3|3c&cA7H.CG.g
    xmlns:esri="http://www.esri.com/2008/ags"
B/^t9F4Y0    layout="absolute"
iW0wq0Z0     creationComplete="initData()"
SV8XH:{H"m-W?0>
-eN}qN0    <mx:Script>
O&s%?6G S.K3},Y0        <![CDATA[
4a;B4M*M PQ c9p!A0            import mx.containers.HBox;3sNews.Net——3S社区&资讯平台3mKUi$N:{ F
         import mx.containers.VBox;
"K6r*DD4m&b,kv7}0         import mx.controls.Image;
!~5v xtd ^d_0         import mx.rpc.events.ResultEvent;
0@5ifuX/t0         //导入flash的命名空间
%P oA-H$t0         import mx.collections.ArrayCollection;3sNews.Net——3S社区&资讯平台Aq$B`!u+l U?$qvE
            import mx.controls.Alert;  
&V&M0\w^b g5yl B#J0            import mx.controls.Button;3sNews.Net——3S社区&资讯平台$E2kkeP/h sm
            import mx.rpc.AsyncResponder;3sNews.Net——3S社区&资讯平台g&zN5T'J Q2Ow
            import flash.geom.Point;
I~"dY-v*h8\6m0            import mx.rpc.events.FaultEvent;3sNews.Net——3S社区&资讯平台v@,m3t!WC#gd
            import mx.printing.FlexPrintJobScaleType;
]fsZ+F/`0            import mx.printing.FlexPrintJob;
O6]!g)}|C-U(l(U0            import mx.rpc.soap.mxml.Operation;3sNews.Net——3S社区&资讯平台f)U!e&I&E*tP2nb
            import mx.containers.Canvas;3sNews.Net——3S社区&资讯平台E0\j`J z
             import flash.text.*;
j a [-N-jG"pO7y0             import mx.controls.Text;3sNews.Net——3S社区&资讯平台9~v}&Y@\so
           3sNews.Net——3S社区&资讯平台._z!L n%~)D+P3W2~9c
           3sNews.Net——3S社区&资讯平台+eS U3N1w]uA
            //导入esri flex api3sNews.Net——3S社区&资讯平台Uq:y]/m%ys"T
         import com.esri.ags.geometry.MapPoint;
M9V:t*PT!^,n0            import com.esri.ags.Graphic;      3sNews.Net——3S社区&资讯平台qLV+e3@
            import com.esri.ags.events.DrawEvent; 3sNews.Net——3S社区&资讯平台^t)loS*k;I;X
            import com.esri.ags.events.ExtentEvent;                                        
!X-O9W&?|;fG!Lc0            import com.esri.ags.SpatialReference;           3sNews.Net——3S社区&资讯平台O} thwk
            import com.esri.ags.layers.GraphicsLayer;
M`4CC{q g5y0   import com.esri.ags.*;
w `0TI]0   import com.esri.ags.InfoWindow;3sNews.Net——3S社区&资讯平台K^|)wS N.w-G.d
   import com.esri.ags.InfoTemplate;
asa|glYw0      import mx.core.ByteArrayAsset;3sNews.Net——3S社区&资讯平台/N p2L@-F0Gm Vsl+J
      public var timerInt:int = 6000;
&fI{kT vX e0  public var donationPoints:Array;
,dS"v:Q|%X2g`0     [Bindable]3sNews.Net——3S社区&资讯平台(o VI~%n k
     public var curInfo:String;3sNews.Net——3S社区&资讯平台_ijI@6m LGYjgl K[
    
6sE.q:f&G p1\2YH`,w;r0  public var curPoint:uint = 0;3sNews.Net——3S社区&资讯平台!Nm*{:aU&t(i
  public var timer:Timer = new Timer(timerInt, 0);
s(l+j5Pz0  3sNews.Net——3S社区&资讯平台c2o'S*OY-u1r'b
  [Bindable]3sNews.Net——3S社区&资讯平台*|z5jV"W d"t(v
  public var donationList:XML;

     [Embed("donations.xml", mimeType="application/octet-stream")]
_8qj'B7}@!lt0  private static const xml:Class;3sNews.Net——3S社区&资讯平台X.eG1_mr A
  3sNews.Net——3S社区&资讯平台3[/Sm8V$cv`
  public  function GetXML() : XML3sNews.Net——3S社区&资讯平台]T(_ ]p P
  {
K,DGq$_^!J0  var ba:ByteArrayAsset = ByteArrayAsset( new xml()) ;
+s7^P8F5dhn&o ObE0  var xml:XML = new XML( ba.readUTFBytes( ba.length ) );
U1^sP0Z5f'\2E6P0  3sNews.Net——3S社区&资讯平台u };p)a/lvm6Q.Y'O
  return xml;
D\3C h8K n]1c0  }
I$|%|XOc4@\:x4}}0  public function initData():void{
|"F'k0md!w%h(J"^b0           donationList = new XML(GetXML());
^RN!{r'P0   addPoints();
e ^7},[+e)}0   3sNews.Net——3S社区&资讯平台Q^6|lat-z0PtD-D
  }  
oa wN%CS \4]0  3sNews.Net——3S社区&资讯平台E+d$a_#eN Ra7I
  public function addPoints():void{    
'B m-{*l7Qh0   this.donationPoints = new Array();          
Po ^(O]MoF0           
@Z1K5v2D m(nolq)i&d0   for each ( var donation:XML in donationList.donation) {    3sNews.Net——3S社区&资讯平台PJ-x8K1S J*S R
    
$_7\x!eI;N3F!mI2d0    var point:MapPoint =3sNews.Net——3S社区&资讯平台5pO#_[.k:ECVS2J
        new MapPoint(Number(donation.lon),Number(donation.lat));3sNews.Net——3S社区&资讯平台Ba#D lv:B
    var aGraphic:Graphic = new Graphic(point);3sNews.Net——3S社区&资讯平台#HT?2a/K4{Z!} F2G~
    
/rvd^*\ HAp%N0    donationPoints.push(point);3sNews.Net——3S社区&资讯平台 JeoM#h
    graphicsLayer.add(aGraphic);

   }   
7d)Z.? JI3xBp0   startTimer();
9Lq(e4z"n-c^F0  }

  
9{n8k7wT0  public function startTimer():void{
,Y3B Bd8b5jU0   timer.addEventListener(TimerEvent.TIMER, timerHandler);
gl3XI4MU1O0   timer.start();3sNews.Net——3S社区&资讯平台%su-]&K(ZA
  }
5UN0~[3~;dKJ:u?0  
q\7Gr@]fR&o0  public function timerHandler(event:TimerEvent):void {
AOxq8N1V `0   3sNews.Net——3S社区&资讯平台J7aj [Dn#_g
   if (curPoint >= donationPoints.length){3sNews.Net——3S社区&资讯平台XUi _t g0N#u$gK
    curPoint = 0;3sNews.Net——3S社区&资讯平台$_$Rz'Dx U
   }
&D W8B{b p!Tn[x0   
&] Z6xn.o0S%F9jT0   showInfo(donationPoints[curPoint]);3sNews.Net——3S社区&资讯平台$w$q*PjF(c)Z
   myMap.centerAt(donationPoints[curPoint]);    
a-n%q%t5oh@0   curPoint++;3sNews.Net——3S社区&资讯平台$U9{*^8c G4m9V5d*V
  }
M f"Vu] c&N0  
6rgehC5y3|0  public function showInfo(mp:MapPoint):void{
)FV/H-Ak*CQ0   3sNews.Net——3S社区&资讯平台%V-qn9Y F~!DOP
   curInfo = donationList.donation.name[curPoint];3sNews.Net——3S社区&资讯平台`1^)|{XSt
   var canvas:Canvas = new Canvas();
C7~oOx C ~{$i:S/M0   var txt:Text=new Text();3sNews.Net——3S社区&资讯平台z.~4l"B7w` L+n,Kk
   txt.text = curInfo;3sNews.Net——3S社区&资讯平台@Xx9Sf$s _
   canvas.addChild(txt);3sNews.Net——3S社区&资讯平台,MbX zz{6q
   myMap.infoWindow.title = curPoint.toString();
)B;cOX Kx%h0   myMap.infoWindow.content = canvas;
8d~1kC0jK$Vw*ox%il0        3sNews.Net——3S社区&资讯平台 |8d4j[F6P*F
   myMap.infoWindow.show(mp);3sNews.Net——3S社区&资讯平台!iW$I[~c
        
QoRhU7k Kp0  }3sNews.Net——3S社区&资讯平台8i'Szf K/z
  
Mm6F&DGI0  public function stopTimer():void{
b8G cRs!]\.\A f0   timer.stop();3sNews.Net——3S社区&资讯平台p4M%H~"T2f3C.D$L
  }
)O9Yt!b${&m qa5fr0        ]]>3sNews.Net——3S社区&资讯平台]t8Ud+A _&w[
    </mx:Script>
[aG yL MX{&k0    <esri:Map id="myMap" penHandCursorVisible="false" initialize="initData()" >
U'A-}7s2Bj2w(L0        <esri:extent>
,f'C7z&~@.o0            <esri:Extent xmin="-120" ymin="-65" xmax="120" ymax="65"/>3sNews.Net——3S社区&资讯平台2iWa#b;A;w\6Q g
        </esri:extent>
#g8XZir4`0        <esri:ArcGISTiledMapServiceLayer3sNews.Net——3S社区&资讯平台Y-` Y,r0T dO
            url="http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer"/>
jI._2G G-s0        <esri:GraphicsLayer id="graphicsLayer" />3sNews.Net——3S社区&资讯平台$m7@{TX;Y+i2o0K-_7W f
        </esri:Map>3sNews.Net——3S社区&资讯平台;P)^&v5ry&Sa0|
 

</mx:Application>


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar