ArcGIS API for JS 3.××加载天地图

       本人是一枚刚刚从事WebGIS开发的小白,现在项目需求在angular框架下,采用3.22 版本API加载天地图,由于目前没有数据,所以就把天地图的底图全部加载了一遍,在加载过程中出现了问题,有的Chrome不显示,查看了div没有覆盖遮挡之类的,于是把底图中所有的东西打印出来发现空间参考不一致。

以下是我遇到的坑

  1. 天地图提供了两种坐标,一种是地理坐标系WGS1984 ,一种是投影坐标系墨卡托(WGS_1984_Web_Mercator_Auxiliary_Sphere)

 

 

    2、Chrome与360浏览器默认的空间参考不一致,下图为在Chrome中的坐标系,

wkid:102100,表示的是平面坐标单位:m/km

 

想在Chrome中加载经纬度底图,设置空间参考

//  设置空间参考

        let spatialReference = new SpatialReference({ wkid: 4326 });

        let initialExtent = new Extent(-180.0, -90.0180.090.0,spatialReference);

应用于底图

let map = new Map("mapDiv", { 

          logo: false,

          // 是否显示滑块

          slider: false,

          extent:initialExtent

         });

控制台输出结果就变为经纬度信息

 

3、如若加载经纬度底图,需要设置切片信息,因为默认是Web_Mercator_Auxiliary_Sphere。

 // 定义图层的图块信息,包括行,列,原点和空间参考。默认为Web Mercator切片方案中的切片

        let tileInfo = new TileInfo({

          // 分辨率

          "dpi": 90.71428571427429,

          "rows" : 256,

          "cols" : 256,

          "compressionQuality" : 0,

          "origin" : {

            "x" : -180,

            "y" : 90

          },

          "spatialReference" : {

            "wkid" : 4326

          },

          "lods" : [

            { level: 2levelValue: 2resolution: 0.3515625scale: 147748796.52937502 },

                    { level: 3levelValue: 3resolution: 0.17578125scale: 73874398.264687508 },

                    { level: 4levelValue: 4resolution: 0.087890625scale: 36937199.132343754 },

                    { level: 5levelValue: 5resolution: 0.0439453125scale: 18468599.566171877 },

                    { level: 6levelValue: 6resolution: 0.02197265625scale: 9234299.7830859385 },

                    { level: 7levelValue: 7resolution: 0.010986328125scale: 4617149.8915429693 },

                    { level: 8levelValue: 8resolution: 0.0054931640625scale: 2308574.9457714846 },

                    { level: 9levelValue: 9resolution: 0.00274658203125scale: 1154287.4728857423 },

                    { level: 10levelValue: 10resolution: 0.001373291015625scale: 577143.73644287116 },

                    { level: 11levelValue: 11resolution: 0.0006866455078125scale: 288571.86822143558 },

                    { level: 12levelValue: 12resolution: 0.00034332275390625scale: 144285.93411071779 },

                    { level: 13levelValue: 13resolution: 0.000171661376953125scale: 72142.967055358895 },

                    { level: 14levelValue: 14resolution: 8.58306884765625e-005scale: 36071.483527679447 },

                    { level: 15levelValue: 15resolution: 4.291534423828125e-005scale: 18035.741763839724 },

                    { level: 16levelValue: 16resolution: 2.1457672119140625e-005scale: 9017.8708819198619 },

                    { level: 17levelValue: 17resolution: 1.0728836059570313e-005scale: 4508.9354409599309 },

                    { level: 18levelValue: 18resolution: 5.3644180297851563e-006scale: 2254.4677204799655 },

                    { level: 19levelValue: 19resolution: 2.68220901489257815e-006scale: 1127.23386023998275 },

                    { level: 20levelValue: 2resolution: 1.341104507446289075e-006scale: 563.616930119991375 }

          ]

        });

最后在Chrome中加载天地图的结果

 

附加:采用3.22版本在线的API链接:

https://js.arcgis.com/3.22/init.js

------------------------------------------------以上是我自己的一些办法,欢迎各位大神指教,后面会继续更新shp数据的加载与显示。

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值