效果如下:
GoogleMapLayer.as
package com.esri.arcgis.flex.sample
{
import com.esri.ags.SpatialReference;
import com.esri.ags.geometry.Extent;
import com.esri.ags.geometry.MapPoint;
import com.esri.ags.layers.supportClasses.LOD;
import com.esri.ags.layers.supportClasses.TileInfo;
import com.esri.ags.layers.TiledMapServiceLayer;
import flash.net.URLRequest;
//扩展TiledMapServiceLayer图层实现加载google地图
public class GoogleMapLayer extends TiledMapServiceLayer
{
private var _tileInfo:TileInfo = new TileInfo();
private var _baseURL:String="";
public function GoogleMapLayer()
{
super();
buildTileInfo();
setLoaded(true);
}
override public function get fullExtent():Extent
{
return new Extent(-20037508.342787, -20037508.342787, 20037508.342787, 20037508.342787, new SpatialReference(102113));
}
override public function get initialExtent():Extent
{
return new Extent(-20037508.342787, -20037508.342787, 20037508.342787, 20037508.342787, new SpatialReference(102113));
}
override public function get spatialReference():SpatialReference
{
return new SpatialReference(102113);
}
override public function get tileInfo():TileInfo
{
return _tileInfo;
}
//获取矢量地图
override protected function getTileURL(level:Number, row:Number, col:Number):URLRequest
{
var url:String="http://mt"+(col%4)+".google.cn/vt/v=w2.114&hl=zh-CN&gl=cn&" +
"x=" + col + "&" +
"y=" + row + "&" +
"z=" + level+ "&s=";
return new URLRequest(url);
}
private function buildTileInfo():void
{
_tileInfo.height=256;
_tileInfo.width=256;
_tileInfo.origin=new MapPoint(-20037508.342787, 20037508.342787);
_tileInfo.spatialReference=new SpatialReference(102113);
_tileInfo.lods = [
new LOD(0, 156543.033928, 591657527.591555),
new LOD(1, 78271.5169639999, 295828763.795777),
new LOD(2, 39135.7584820001, 147914381.897889),
new LOD(3, 19567.8792409999, 73957190.948944),
new LOD(4, 9783.93962049996, 36978595.474472),
new LOD(5, 4891.96981024998, 18489297.737236),
new LOD(6, 2445.98490512499, 9244648.868618),
new LOD(7, 1222.99245256249, 4622324.434309),
new LOD(8, 611.49622628138, 2311162.217155),
new LOD(9, 305.748113140558, 1155581.108577),
new LOD(10, 152.874056570411, 577790.554289),
new LOD(11, 76.4370282850732, 288895.277144),
new LOD(12, 38.2185141425366, 144447.638572),
new LOD(13, 19.1092570712683, 72223.819286),
new LOD(14, 9.55462853563415, 36111.909643),
new LOD(15, 4.77731426794937, 18055.954822),
new LOD(16, 2.38865713397468, 9027.977411),
new LOD(17, 1.19432856685505, 4513.988705),
new LOD(18, 0.597164283559817, 2256.994353),
new LOD(19, 0.298582141647617, 1128.497176)
];
}
}
}
ArcGISGoogleMap.mxml
<?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:google="com.esri.arcgis.flex.sample.*"
xmlns:esri="http://www.esri.com/2008/ags">
<esri:Map>
<google:GoogleMapLayer id="googleMap" />
</esri:Map>
</s:Application>
- 大小: 121.9 KB
分享到:
相关推荐
在ArcGIS Flex API中使用天地图的地名搜索服务。源代码中通过ArcGIS Flex API封装了TianDiTuLocationTask类,接口类似ArcGIS Flex API中task类。
首先,ArcGIS Flex API是由Esri公司提供的,用于构建富互联网应用程序(RIA)的开发接口,它允许开发者在网页上创建交互式地图。API提供了丰富的地图操作功能,如图层管理、查询、分析以及图形绘制。在军标箭头库的...
arcgis flex api 2.5 最新
arcgis flex api 3.0 离线帮助文档chm格式 绝对好用!
在构建基于ArcGIS Flex API的地图应用时,首先要理解ArcGIS Server的核心概念。ArcGIS Server是一个强大的地理信息系统(GIS)服务器,它允许开发人员部署、管理和发布地图服务、地理编码服务、几何服务等。通过...
ArcGIS for Flex API 是Esri公司为Flex开发者提供的一款强大的地图服务开发工具,它允许开发者在Adobe Flex环境中创建丰富的、交互式的Web GIS应用。本资源包含ArcGIS for Flex API的全部代码实例,是深入理解和学习...
1. Map:地图组件是ARCGIS Flex API的核心,它负责展示地图内容,包括图层、标注、图例等。 2. Layer:图层是地图上的数据容器,可以包含各种数据源,如ArcGIS Server服务、WMS服务、KML文件等。 3. Graphic:图形...
ArcGIS Flex API是Esri公司开发的一个强大的地图服务框架,用于构建交互式的Web GIS应用程序。API基于Adobe Flex技术,允许开发者利用Flex的富互联网应用(RIA)功能来构建功能丰富的地图应用。 此离线参考可能包含...
此外,ArcGIS Flex API利用继承和多态性来处理各种GIS对象,如地图图层、要素服务等。这些对象被设计成一系列可继承的类,从而支持更高级的功能,如动态地图服务、要素查询和空间分析。 #### 结论 总而言之,...
### ArcGIS Flex API 高级篇 #### 聚合 在**ArcGIS Flex API**中,聚合是一种处理大量地理信息的有效方法。特别是在处理密集的数据点时,通过聚合可以将多个点合并为一个代表性的点,以此来提高地图的可读性和性能...
arcgis api for flex 开发入门(三)地图浏览控件的使用
ArcGIS Flex API是Esri公司提供的一款强大的地图服务接口,它允许开发者将地理信息系统(GIS)功能集成到Flex应用中,而Adobe AIR则是一个跨平台的运行环境,使开发者能够构建桌面和移动设备上的富互联网应用(RIA)...
ArcGIS Flex API 是Esri公司提供的一个强大的地图服务开发框架,它允许开发者使用Adobe Flex技术构建交互式、富互联网应用程序(RIA),以展示和操作地理信息。Flex API 提供了丰富的地图绘制、查询、分析和数据可视...
在ArcGIS Flex API中,XML经常被用作传输和表示地理信息的一种方式,包括地理坐标、地图特性等。因此,掌握XML的解析技术对于开发者来说是非常重要的。 #### 三、XML结构与遍历方式 在深入探讨XML解析之前,首先...
ArcGIS Flex API是Esri公司提供的一种接口,它允许开发者在Flex环境中构建交互式的地图应用。此次提供的版本解决了前一版本中存在的JavaScript错误问题,确保了开发者在离线状态下也能顺畅地查阅API文档,减少因报错...
《ArcGIS 10.1 与天地图Flex API接口工具的深度解析》 ArcGIS 10.1是一款强大的地理信息系统(GIS)软件,由Esri公司开发,广泛应用于地图制作、空间分析和地理数据管理等领域。而天地图是中国国家基础地理信息中心...
本文将深入探讨如何使用ArcGIS API for JavaScript 3.23版本加载并集成在线的谷歌地图,以及展示谷歌地图的影像和标注。 首先,我们要了解ArcGIS API for JavaScript的核心概念。这是一个基于Web的开发库,由Esri...
在ArcGIS Flex中,我们可以借助ArcGIS API提供的ChartFeatureServiceLayer类来实现柱状图与地图的结合。你需要提供一个含有统计数据的服务URL,然后ChartFeatureServiceLayer会自动根据字段值生成柱状图。可以自定义...
这个"基于ArcGIS Flex API实现动态标绘demo_1.1"是针对该API的一个具体应用实例,主要用于在地图上进行动态的图形绘制和编辑。以下是关于这一主题的详细知识: 1. **ArcGIS Flex API**:由Esri公司开发,是...