加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ArcGIS Server Felx API接入E都市地图

发布时间:2020-12-15 03:59:52 所属栏目:百科 来源:网络整理
导读:ArcGIS Server Felx API 接入 E 都市地图 (本实例只是个人兴趣研究,如果想要应用到商业用途,请联系相关厂家) ? 通过 HttpWatch 工具查看 E 都市网站加载三维地图的方式及原理,能够观察到其加载的方式是通过切片的方式进行加载,但不同城市的地址不一样

ArcGIS Server Felx API接入E都市地图

(本实例只是个人兴趣研究,如果想要应用到商业用途,请联系相关厂家)

?

通过HttpWatch工具查看E都市网站加载三维地图的方式及原理,能够观察到其加载的方式是通过切片的方式进行加载,但不同城市的地址不一样,需要根据实际情况调整切片加载的位置保证其在实际的位置,而且相互之间不压盖。观察每幅切片的加载地址,推测出其加载的算法,继承ArcGIS Server Flex APITiledMapServiceLayer类,实现E都市地图服务数据的接入。具体代码如下:

?

packagecom.esri.viewer.components.common.edushi

?

{

?

??? importcom.esri.ags.SpatialReference;

?

??? importcom.esri.ags.geometry.Extent;

?

??? importcom.esri.ags.geometry.MapPoint;

?

??? import com.esri.ags.layers.TiledMapServiceLayer;

?

??? import com.esri.ags.layers.supportClasses.LOD;

?

??? importcom.esri.ags.layers.supportClasses.TileInfo;

?

???

?

??? importflash.net.URLRequest;

?

???

?

??? importflashx.textLayout.formats.Float;

?

???

?

??? publicclassEdushiTiledMapServiceLayer extends TiledMapServiceLayer

?

??? {

?

??????? //成员变量

?

??????? privatevar _tileInfo:TileInfo =new TileInfo(); // see buildTileInfo()

?

??????? privatevar _wkid:int = 102100;

?

??????? privatevarcornerCoordinate:Number = 20037508.342787;

?

???????

?

???????

?

??????? publicfunctionEdushiTiledMapServiceLayer()

?

??????? {

?

??????????? super();

?

???????????

?

??? ??????? buildTileInfo(); // to create our hardcoded tileInfo

?

???????????

?

??????????? setLoaded(true); // Map will only use loaded layers

?

??????? }

?

???????

?

??????? //———————————-

?

??????? // 全屏范围

?

??????? // - required to calculate the tiles to use

?

??????? //———————————-

?

??????? overridepublicfunctionget fullExtent():Extent

?

??????? {

?

??????????? returnnewExtent(-cornerCoordinate,-cornerCoordinate,cornerCoordinate,new SpatialReference(_wkid));

?

??????? }

?

???????

?

??????? //———————————-

?

??????? // 初始化范围

?

??????? // - needed if Map doesn”t have an extent

?

??????? //———————————-

?

???????

?

??????? overridepublicfunctiongetinitialExtent():Extent

?

??????? {

?

??????????? returnnewExtent(-cornerCoordinate,new SpatialReference(_wkid));

?

??????? }

?

???????

?

??????? //———————————-

?

??????? // 空间参考系

?

??????? // - needed if Map doesn”t have a spatialReference

?

??????? //———————————-

?

??????? overridepublicfunctiongetspatialReference():SpatialReference

?

??????? {

?

??????????? returnnewSpatialReference(_wkid);

?

??????? }

?

???????

?

??????? //———————————-

?

??????? // tileInfo

?

??????? //———————————-

?

??????? overridepublicfunctionget tileInfo():TileInfo

?

??????? {

?????? }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读