Cesium 绘制当前视口下需要渲染的地图瓦片的四至范围

代码

const loadingTilesTree =
   this.viewer.scene.globe._surface._tilesToRender;
const tilesList = [];
const tilesBoundings = [];
loadingTilesTree.forEach(item => {
   tilesList.push([item._x, item._y, item._level]);
   item._rectangle.level = item._level;
   tilesBoundings.push(item._rectangle);
});
console.log("当前需要加载的瓦片列表:", tilesList);
console.log(tilesBoundings);
this.tilesBoundingSource.entities.removeAll();

tilesBoundings.forEach(rec => {
   const center = Cesium.Rectangle.center(rec, new Cesium.Cartographic());
   const position = Cesium.Cartesian3.fromRadians(center.longitude, center.latitude);
   console.log(position);
   this.tilesBoundingSource.entities.add({
       position: position,
       rectangle: {
           coordinates: rec,
           outlineColor: Cesium.Color.fromAlpha(Cesium.Color.RED, 0.5),
           outlineWidth: 20,
           outline: true,
           fill: false,
           heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
       },
       label: {
           text: `${rec.level}`,
           font: "30px",
           fillColor: Cesium.Color.YELLOW,
           show: true,
       },
   });
});

效果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值