zoukankan      html  css  js  c++  java
  • ArcGIS For Flex学习之Mapping---Map Extent and Mouse Coordinates

    效果图如下:

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
     3                xmlns:s="library://ns.adobe.com/flex/spark"
     4                xmlns:esri="http://www.esri.com/2008/ags"
     5                pageTitle="Map Extent and Mouse Coordinates">
     6 
     7     <fx:Script>
     8         <![CDATA[
     9             import com.esri.ags.geometry.Extent;
    10             import com.esri.ags.geometry.MapPoint;
    11             import com.esri.ags.utils.WebMercatorUtil;
    12 
    13             // when mouse (cursor) is on the map ...
    14             private function loadHandler():void
    15             {
    16                 myMap.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
    17             }
    18 
    19             // ... show coordinates of current (mouse) location
    20             private function mouseMoveHandler(event:MouseEvent):void
    21             {
    22                 const mapPoint:MapPoint = myMap.toMapFromStage(event.stageX, event.stageY);
    23                 const latlong:MapPoint = WebMercatorUtil.webMercatorToGeographic(mapPoint) as MapPoint;
    24                 mousecoords.text =
    25                     "x,y is " + mapPoint.x.toFixed(0) + "," + mapPoint.y.toFixed(0)
    26                     + " and Lat/Long is: " + latlong.y.toFixed(6)
    27                     + " / " + latlong.x.toFixed(6);
    28             }
    29 
    30             // convert current projected extent to geographic and show as such
    31             protected function showExtentInGeographic(extent:Extent):String
    32             {
    33                 const geoExtent:Extent = WebMercatorUtil.webMercatorToGeographic(myMap.extent) as Extent;
    34                 // return geoExtent.toString() + ".." ;
    35                 return " " + geoExtent.xmin.toFixed(6)
    36                     + ", " + geoExtent.ymin.toFixed(6)
    37                     + ", " + geoExtent.xmax.toFixed(6)
    38                     + ", " + geoExtent.ymax.toFixed(6)
    39                     + "   (wkid: " + geoExtent.spatialReference.wkid + ")";
    40             }
    41         ]]>
    42     </fx:Script>
    43 
    44     <s:controlBarLayout>
    45         <s:VerticalLayout gap="10"
    46                           paddingBottom="7"
    47                           paddingLeft="10"
    48                           paddingRight="10"
    49                           paddingTop="7"/>
    50     </s:controlBarLayout>
    51     <s:controlBarContent>
    52         <s:RichText width="100%">
    53             This sample demonstrates how to use event listeners on the
    54             mouse to display current information about the mouse location.
    55             The map's current extent and scale is also displayed as you
    56             change the extent by navigating the map (pan/zoom) or use the
    57             navigation slider to zoom in/out.
    58         </s:RichText>
    59         <s:HGroup>
    60             <s:Label fontWeight="bold" text="Current map extent:"/>
    61             <s:RichEditableText editable="false" text='xmin="{myMap.extent.xmin.toFixed(0)}" ymin="{myMap.extent.ymin.toFixed(0)}" xmax="{myMap.extent.xmax.toFixed(0)}" ymax="{myMap.extent.ymax.toFixed(0)}"   (wkid="{myMap.spatialReference.wkid}")'/>
    62         </s:HGroup>
    63         <s:HGroup>
    64             <s:Label fontWeight="bold" text="Current map extent (in geographic):"/>
    65             <s:RichEditableText editable="false" text="{showExtentInGeographic(myMap.extent)}"/>
    66         </s:HGroup>
    67         <s:HGroup>
    68             <s:Label fontWeight="bold" text="Current Mouse Coordinates:"/>
    69             <s:RichEditableText id="mousecoords"
    70                                 editable="false"
    71                                 text="Move the mouse over the map to see its current coordinates..."/>
    72         </s:HGroup>
    73         <s:HGroup>
    74             <s:Label fontWeight="bold" text="Current map scale is"/>
    75             <s:RichEditableText editable="false" text="1:{myMap.scale.toFixed(0)} (level {myMap.level})"/>
    76         </s:HGroup>
    77     </s:controlBarContent>
    78 
    79     <esri:Map id="myMap" load="loadHandler()">
    80         <esri:extent>
    81             <esri:Extent xmin="3035000" ymin="4305000" xmax="3475000" ymax="10125000">
    82                 <esri:SpatialReference wkid="102100"/>
    83                 <!-- same as tiled map service below -->
    84             </esri:Extent>
    85         </esri:extent>
    86         <esri:ArcGISTiledMapServiceLayer url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"/>
    87     </esri:Map>
    88 
    89 </s:Application>
    View Code
  • 相关阅读:
    代理模式
    组合模式
    策略模式
    状态模式
    js 未结束的字符串常量错误解决方法
    struts2+hibernate+poi导出Excel实例
    Java 实现导出excel表 POI
    ExtJS 4.2 中自定义事件
    dhtmlxGrid分页查询,条件查询实例
    '@P0' 附近有语法错误
  • 原文地址:https://www.cnblogs.com/wicked-fly/p/4040284.html
Copyright © 2011-2022 走看看