new mars3d.layer.XyzLayer({的rectangle瓦片数据的矩形区域范围说明

148 篇文章 2 订阅
132 篇文章 0 订阅

new mars3d.layer.XyzLayer({的rectangle瓦片数据的矩形区域范围说明

2.这个xyz图层的矩形区域范围rectangle从图层文件中无法获取,但是看图层文件可以知道这个是12-21级的数据。

 

3.一般这个图层数据文件服务会有提供相应的rectangle范围,在服务的xml文件内,可以看到这个数据值。如果没有这个xml文件,rectangle也可以自己设置。

在我们的瓦片调试示例中,单击【绘制】按钮,在地球上进行绘制后,可以看到这个中国地图,大公鸡的效果,会变成一个在rectangle矩形范围内的地图效果。

 1.此时就可以得到相应的rectangle的范围,在对应的图层初始化配置里面加上该参数即可。

 tileLayer = new mars3d.layer.XyzLayer({

    url: "//data.mars3d.cn/tile/dizhiChina/{z}/{x}/{y}.png",

    minimumLevel: 0,

    maximumLevel: 10,

    rectangle: { xmin: 69.706929, xmax: 136.560941, ymin: 15.831038, ymax: 52.558005 },

    opacity: 0.7,

    center: { lat: 22.43392, lng: 113.23887, alt: 8157553, heading: 354, pitch: -82 },

    flyTo: true

  })

  map.addLayer(tileLayer)

2.加上该参数后,如果有的时候缺这个404报错,要么是缺数据了需要补充数据,要么是有数据但是不能正常请求,要么是跨域了。

此时可以参考api文档,加上以下参数,对数据请求进行限制,避免无效请求。

  tileLayer = new mars3d.layer.ArcGisCacheLayer({

    url: "//data.mars3d.cn/arcgis_cache/hfgh/_alllayers/{z}/{y}/{x}.png",

    upperCase: false,

    minimumLevel: 1,

    maximumLevel: 17,

    minimumTerrainLevel: 1,

    maximumTerrainLevel: 17,

    rectangle: { xmin: 116.846, xmax: 117.642, ymin: 31.533, ymax: 32.185 } // 控制切片如果在矩形坐标内才显示,如果不在矩形坐标内不显示

  })

  map.addLayer(tileLayer)

注意,以下参数只对瓦片类型数据才生效:

    minimumLevel: 1,
    maximumLevel: 17,
    minimumTerrainLevel: 1,
    maximumTerrainLevel: 17,

 最后,如果是跨域错误,参考以下方案解决。

Mars3D 三维可视化平台 | 火星科技 | 地图开发

如果是能够正常切片但是一直404,参考以下方案解决。

[Mars3d]解决cesium切片底图正常出来但控制台一直报404错的方法_an error occurred in "urltemplateimageryprovider":-CSDN博客

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值