Cesium鼠标点击请求WMTS GetFeatureInfo接口获取点选的要素信息

目录

Cesium计算近似层级

计算点击位置瓦片行列号和像素

构建URL发送请求


Cesium计算近似层级

Cesium 3D模式下没有层级概念,二维地图才有层级zoom,可以通过相机的高度计算近似层级。

heightToZoom(height) {
  let A = 40487.57;
  let B = 0.00007096758;
  let C = 91610.74;
  let D = -40467.74;
  return Math.round(D + (A - D) / (1 + Math.pow(height / C, B)));
}

计算点击位置瓦片行列号和像素

分辨率resolution:当前地图范围内,1像素代表实际距离多少米。

切片原点在左上角,根据下图可以得到公式:

x=origin.x+resolution*(tileSize*tileCol+tileI)y=origin.y+resolution*(tileSize*tileRow+tileJ)

 

反推,根据鼠标点击坐标转换成web墨卡托[x,y],可计算出tileCol、tileRow、tileI和tileJ。

fx=(x-origin.x)/(resolution*tileSize)=tileCol+tileI/tileSize

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值