我的解答思路和尝试过的方法
我想要达到的
用cesium的方法加载了一个地图,但是想让他到达一定高度后就止步于当前层级不再继续加载了,也就是控制他的最大加载层级
用cesium的方法加载了一个地图,但是想让他到达一定高度后就止步于当前层级不再继续加载了,也就是控制他的最大加载层级
你使用的什么地图服务?天地图,还是你们自己服务器的地图服务,加载地图的级别是取决于地图服务里面那个配置文件的,你现在使用的哪一个地图服务呢,如果是天地图的话,在加载的时候可以设置想要加载的级别
//天地图
imageryProvider: new _XEarth.Cesium.WebMapTileServiceImageryProvider({
url: 'http://t0.tianditu.gov.cn/img_w/wmts?tk=这里你可以自己去天地图的官网申请一个key,免费的',
layer: 'img',
style: 'default',
tileMatrixSetID: 'w',
format: 'tiles',
maximumLevel: 19,//这个参数就是设置加载的最大级别
}),
如果是你们本地发布的地图服务,就需要设置对应的配置文件,你可以把你加载地图的代码贴出来一下
如果是你们自己服务器发布的地图服务,最简单就是,把更高级别的地图数据不发布出来也可以实现
还有一种思路,你可以通过一个工具组件知道当前地图缩放到哪一个级别了,判定达到这个级别过后禁用鼠标滚轮放大地图的事件,也可以达到这个需求,
cesium有一个工具库叫cesium-navigation-es6模块,你可以百度一下怎么使用这个模块,这个模块就提供了当前地图缩放的比例尺