cesium 获取 bbox、获取四至、获取边界、获取左上角经纬度、获取 extend、获取界面四边的经纬度
const getViewExtend = () => { let params = {} let extend = viewer.camera.computeViewRectangle() if (typeof extend === 'undefined') { //2D下会可能拾取不到坐标,extend返回undefined,因此作如下转换 let canvas = viewer.scene.canvas let upperLeft = new Cesium.Cartesian2(0, 0) //canvas左上角坐标转2d坐标 let lowerRight = new Cesium.Cartesian2(canvas.clientWidth, canvas.clientHeight) //canvas右下角坐标转2d坐标 let ellipsoid = viewer.scene.globe.ellipsoid let upperLeft3 = viewer.camera.pickEllipsoid(upperLeft, ellipsoid) //2D转3D世界坐标 let lowerRight3 = viewer.camera.pickEllipsoid(lowerRight, ellipsoid) //2D转3D世界坐标 let upperLeftCartographic = viewer.scene.globe.ellipsoid.cartesianToCartographic(upperLeft3) //3D世界坐标转弧度 let lowerRightCartographic = viewer.scene.globe.ellipsoid.cartesianToCartographic(lowerRight3) //3D世界坐标转弧度 let minx = Cesium.Math.toDegrees(upperLeftCartographic.longitude) //弧度转经纬度 let maxx = Cesium.Math.toDegrees(lowerRightCartographic.longitude) //弧度转经纬度 let miny = Cesium.Math.toDegrees(lowerRightCartographic.latitude) //弧度转经纬度 let maxy = Cesium.Math.toDegrees(upperLeftCartographic.latitude) //弧度转经纬度 console.log('经度:' + minx + '----' + maxx) console.log('纬度:' + miny + '----' + maxy) params.minx = minx params.maxx = maxx params.miny = miny params.maxy = maxy } else { //3D获取方式 params.maxx = Cesium.Math.toDegrees(extend.east) params.maxy = Cesium.Math.toDegrees(extend.north) params.minx = Cesium.Math.toDegrees(extend.west) params.miny = Cesium.Math.toDegrees(extend.south) } // 返回屏幕所在经纬度范围 return params } // 获取四至坐标 const { minx, miny, maxx, maxy } = getViewExtend() // bbox const bbox = [minx, miny, maxx, maxy].join(',') console.log(bbox)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2017-03-14 CSS 温故而知新 background常用属性
2017-03-14 CSS3 稳固而知新: 居中
2017-03-14 typeof 和 Object.prototype.toString.call 数据类型判断的区别
2017-03-14 eslint 人性化配置