• ArcGIS Google Map 增加虚拟图层(MapImageLayer)(转载)


    <?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.*"
                   xmlns:flash="flash.text.*"
                   xmlns:arcgis="cn.com.vistech.arcgis.*"
                   xmlns:esri="http://www.esri.com/2008/ags">
        <fx:Declarations>
            <esri:SimpleMarkerSymbol id="citySymbol"
                                     alpha="0.8"
                                     color="0xDDDD00"
                                     size="6"
                                     style="circle">
                <esri:SimpleLineSymbol width="2"
                                       alpha="1"
                                       color="0xDD0000"
                                       style="solid"/>
            </esri:SimpleMarkerSymbol>
            <esri:SimpleFillSymbol color="0xFFFFFF"
                                   alpha="0.5"
                                   style="solid"
                                   id="mySymbol">
                <esri:SimpleLineSymbol color="0xFFFFFF"
                                       width="0"
                                       alpha="0.5"
                                       style="solid"/>
            </esri:SimpleFillSymbol>
            <esri:TextSymbol id="nanjing"
                             text="南京"
                             placement="above"
                             xoffset="1"
                             yoffset="3"
                             color="0x666666"
                             border="false"
                             borderColor="0x000000"
                             background="false"
                             backgroundColor="0xFFFFFF">
                <flash:TextFormat size="13"
                                  font="宋体"
                                  bold="true"
                                  italic="false"
                                  underline="false"/>
            </esri:TextSymbol>
            <esri:MapImageLayer id="viso"
                                alpha="0.5">
            </esri:MapImageLayer>
        </fx:Declarations>
        <esri:Map id="map"
                  logoVisible="false"
                  openHandCursorVisible="false"
                  scaleBarVisible="false"
                  zoomSliderVisible="false"
                  load="loadHandler()">
            <arcgis:GoogleMapLayer/>
            <esri:GraphicsLayer symbol="{citySymbol}">
                <esri:Graphic symbol="{nanjing}">
                    <esri:geometry>
                        <esri:MapPoint x="13221159.886688277"
                                       y="3769799.519742769"/>
                    </esri:geometry>
                </esri:Graphic>
                <esri:Graphic>
                    <esri:geometry>
                        <esri:MapPoint x="13221159.886688277"
                                       y="3769799.519742769"
                                       id="js"/>
                    </esri:geometry>
                </esri:Graphic>
    
                <esri:Graphic>
                    <esri:geometry>
                        <esri:MapPoint x="12801741.44122646"
                                       y="3606802.4843253596"/>
                    </esri:geometry>
                </esri:Graphic>
                <esri:Graphic>
                    <esri:geometry>
                        <esri:MapPoint x="13692297.36757265"
                                       y="4191093.670273363"/>
                    </esri:geometry>
                </esri:Graphic>
    
                <esri:Graphic>
                    <esri:geometry>
                        <esri:MapPoint x="12801741.44122646"
                                       y="4191093.670273363"/>
                    </esri:geometry>
                </esri:Graphic>
                <esri:Graphic>
                    <esri:geometry>
                        <esri:MapPoint x="13692297.36757265"
                                       y="3606802.4843253596"/>
                    </esri:geometry>
                </esri:Graphic>
                <esri:Graphic symbol="{mySymbol}">
                    <esri:Polygon spatialReference="{new SpatialReference(102113)}">
                        <fx:Array>
                            <fx:Array>
                                <esri:MapPoint id="a1"
                                               x="-20037508.342787"
                                               y="-20037508.342787"/>
                                <esri:MapPoint id="b1"
                                               x="-20037508.342787"
                                               y="3575001"/>
                                <esri:MapPoint id="a3"
                                               x="20037508.342787"
                                               y="3575001"/>
                                <esri:MapPoint id="a4"
                                               x="20037508.342787"
                                               y="-20037508.342787"/>
                            </fx:Array>
                        </fx:Array>
                    </esri:Polygon>
                </esri:Graphic>
                <esri:Graphic symbol="{mySymbol}">
                    <esri:Polygon spatialReference="{new SpatialReference(102113)}">
                        <fx:Array>
                            <fx:Array>
                                <esri:MapPoint id="y1"
                                               x="-20037508.342787"
                                               y="4204007"/>
                                <esri:MapPoint id="y2"
                                               x="-20037508.342787"
                                               y="20037508.342787"/>
                                <esri:MapPoint id="y3"
                                               x="-20037508.342787"
                                               y="20037508.342787"/>
                                <esri:MapPoint id="y4"
                                               x="20037508.342787"
                                               y="4204007"/>
                            </fx:Array>
                        </fx:Array>
                    </esri:Polygon>
                </esri:Graphic>
                <esri:Graphic symbol="{mySymbol}">
                    <esri:Polygon spatialReference="{new SpatialReference(102113)}">
                        <fx:Array>
                            <fx:Array>
                                <esri:MapPoint id="u1"
                                               x="-20037508.342787"
                                               y="4204007"/>
                                <esri:MapPoint id="u2"
                                               x="12783210"
                                               y="4204007"/>
                                <esri:MapPoint id="u3"
                                               x="12783210"
                                               y="3575001"/>
                                <esri:MapPoint id="u4"
                                               x="-20037508.342787"
                                               y="3575001"/>
                            </fx:Array>
                        </fx:Array>
                    </esri:Polygon>
                </esri:Graphic>
                <esri:Graphic symbol="{mySymbol}">
                    <esri:Polygon spatialReference="{new SpatialReference(102113)}">
                        <fx:Array>
                            <fx:Array>
                                <esri:MapPoint id="t1"
                                               x="13703667"
                                               y="4204007"/>
                                <esri:MapPoint id="t2"
                                               x="13703667"
                                               y="3575001"/>
                                <esri:MapPoint id="t3"
                                               x="20037508.342787"
                                               y="3575001"/>
                                <esri:MapPoint id="t4"
                                               x="20037508.342787"
                                               y="4204007"/>
                            </fx:Array>
                        </fx:Array>
                    </esri:Polygon>
                </esri:Graphic>
            </esri:GraphicsLayer>
        </esri:Map>
    
        <s:Button label="按钮"
                  click="button1_clickHandler(event)"
                  top="10"
                  right="10"/>
        <s:Panel x="29"
                 y="19"
                 width="1082"
                 height="200">
            <s:Label fontWeight="bold"
                     text="Current map extent:"
                     x="15"
                     y="10"/>
            <s:RichEditableText editable="false"
                                text='xmin="{map.extent.xmin.toFixed(0)}" ymin="{map.extent.ymin.toFixed(0)}" xmax="{map.extent.xmax.toFixed(0)}" ymax="{map.extent.ymax.toFixed(0)}"   (wkid="{map.spatialReference.wkid}")'
                                x="9"
                                y="135"/>
            <s:Label fontWeight="bold"
                     text="Current map extent (in geographic):"
                     x="23"
                     y="53"/>
            <s:RichEditableText editable="false"
                                text="{showExtentInGeographic(map.extent)}"
                                x="10"
                                y="110"/>
            <s:Label fontWeight="bold"
                     text="Current Mouse Coordinates:"
                     x="10"
                     y="73"/>
            <s:RichEditableText id="mousecoords"
                                editable="false"
                                text="Move the mouse over the map to see its current coordinates..."
                                x="10"
                                y="93"/>
            <s:Label fontWeight="bold"
                     text="Current map scale is"
                     x="10"
                     y="33"/>
            <s:RichEditableText editable="false"
                                text="1:{map.scale.toFixed(0)} (level {map.level})"
                                x="14"
                                y="-24"/>
        </s:Panel>
        <fx:Script>
            <![CDATA[
                import com.esri.ags.SpatialReference;
                import com.esri.ags.events.MapEvent;
                import com.esri.ags.geometry.Extent;
                import com.esri.ags.layers.supportClasses.MapImage;
                import com.esri.ags.utils.WebMercatorUtil;
    
                import mx.controls.Alert;
                import mx.core.FlexGlobals;
    
                protected function button1_clickHandler(event:MouseEvent):void
                {
    
                    var zx:MapPoint=new MapPoint(114.859, 35.32);
                    var ys:MapPoint=new MapPoint(124.155, 41.25);
                    zx=WebMercatorUtil.geographicToWebMercator(zx) as MapPoint;
                    ys=WebMercatorUtil.geographicToWebMercator(ys) as MapPoint;
    
                    viso.removeAll();
                    var visoMapImage:MapImage=new MapImage();
                    visoMapImage.href="http://10.32.22.250:8080/appServices/emf2vec/visoface-gis.swf?r=" + new Date().getMilliseconds();
                    var extent:Extent=new Extent(12783205.393024608, 4204003.347074539, 13827701.37943888, 4989446.834623009, new SpatialReference(102113));
                    visoMapImage.extent=extent;
                    viso.add(visoMapImage);
                    FlexGlobals.topLevelApplication.map.addLayer(viso);
                }
    
                private function loadHandler():void
                {
                    map.centerAt(js);
                    map.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
                }
    
                // ... show coordinates of current (mouse) location
                private function mouseMoveHandler(event:MouseEvent):void
                {
                    const mapPoint:MapPoint=map.toMapFromStage(event.stageX, event.stageY);
                    const latlong:MapPoint=WebMercatorUtil.webMercatorToGeographic(mapPoint) as MapPoint;
                    mousecoords.text="x,y is " + mapPoint.x.toFixed(0) + "," + mapPoint.y.toFixed(0) + " and Lat/Long is: " + latlong.y.toFixed(6) + " / " + latlong.x.toFixed(6);
                }
    
                // convert current projected extent to geographic and show as such
                protected function showExtentInGeographic(extent:Extent):String
                {
                    const geoExtent:Extent=WebMercatorUtil.webMercatorToGeographic(map.extent) as Extent;
                    // return geoExtent.toString() + ".." ;
                    return " " + geoExtent.xmin.toFixed(6) + ", " + geoExtent.ymin.toFixed(6) + ", " + geoExtent.xmax.toFixed(6) + ", " + geoExtent.ymax.toFixed(6) + "   (wkid: " + geoExtent.spatialReference.wkid + ")";
                }
            ]]>
        </fx:Script>
    </s:Application>
  • 相关阅读:
    Xcode9自带版本控制系统(Git)的使用
    iOS中的枚举:enum, NS_ENUM, NS_OPTIONS的使用区别
    iOS页面右滑返回的实现方法总结
    [C++]项目中的代码注释规范(整理)
    Dynamic Time Warping 动态时间规整算法
    动态时间归整/规整/弯曲(Dynamic time warping,DTW)
    隐马尔科夫模型HMM学习最佳范例
    蓝牙4.0协议基本介绍以及展望
    UART的CTS与RTS
    KEIL MDK输出map文件分析
  • 原文地址:https://www.cnblogs.com/gispathfinder/p/5746267.html
Copyright © 2020-2023  润新知