博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
4.获取鼠标移动位置
阅读量:4091 次
发布时间:2019-05-25

本文共 1855 字,大约阅读时间需要 6 分钟。

一、场景初始化

let viewer = new Cesium.Viewer('cesiumContainer', {    //地图图标,图层选择器,选择要显示的地图服务和地形服务,默认会用到cesium.ion    baseLayerPicker: false,    //问号图标,导航帮助按钮,显示默认的地图控制帮助    navigationHelpButton: false,    animation: false,//动画器件,显示当前时间,允许跳转特定时间    timeline: false,//时间轴    //全屏图标,全屏按钮    fullscreenButton: false,    //虚拟现实    //vrButton: true,    //阴影    shadows: true,    //点击后显示详细信息    //infoBox: true,    //展示数据版权属性    CreditsDisplay: false,    //terrainExaggeration: 3.0, //地形夸大    shouldAnimate: true});

二、监听 MOUSE MOVE 事件

注意:mouse move 事件多次设置,只执行最后一次定义的方法,前面都被覆盖

let handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);handler.setInputAction(function (movement) {//捕获椭球体,将笛卡尔二维平面坐标转为椭球体的笛卡尔三维坐标,返回球体表面的点    let ellipsoid = viewer.scene.globe.ellipsoid;    let cartesian = viewer.camera.pickEllipsoid(movement.endPosition, ellipsoid);    if (cartesian) {        //将笛卡尔三维坐标转为地图坐标(弧度)        let cartographic = ellipsoid.cartesianToCartographic(cartesian);        //将地图坐标(弧度)转为十进制的度数        //经度        let log = Cesium.Math.toDegrees(cartographic.longitude).toFixed(2);        //纬度        let lat = Cesium.Math.toDegrees(cartographic.latitude).toFixed(2);        //视高        let alt = (viewer.camera.positionCartographic.height / 1000).toFixed(2);        //海拔        let height = (viewer.scene.globe.getHeight(cartographic) / 1000).toFixed(2);        //方位角        let heading = Cesium.Math.toDegrees(viewer.camera.heading).toFixed(2);        //界面中显示        // let vpObj = document.getElementById('viewerPosition');        // vpObj.innerHTML = '经度:' + log + '    纬度:' + lat + '    视高:' + alt + ' km    海拔:' + height + ' km    方位角:' + heading + '°'        let info = '经度:' + log + '    纬度:' + lat + '    视高:' + alt + ' km    海拔:' + height + ' km    方位角:' + heading + '°';        console.log(info);    }}, Cesium.ScreenSpaceEventType.MOUSE_MOVE);

 

转载地址:http://danii.baihongyu.com/

你可能感兴趣的文章
卧槽!小姐姐用动画图解 Git 命令,这也太秀了吧?!
查看>>
厉害了!Python 编辑器界的神器 Jupyter ,推出官方可视化 Debug 工具!
查看>>
你的银行账户信息,可能正被人拿到暗网上公开售卖!
查看>>
太赞啦!GitHub 重磅宣布,私有仓库将对外免费开放,不限人数!
查看>>
我用 Python 分析了 “青你 2” 漂亮小姐姐的颜值,结果真香!
查看>>
这款开源神器,让你能在 iPad 上随心所欲写代码!
查看>>
卧槽!Java 虚拟机竟然还有这些性能调优技巧...
查看>>
JavaScript 诞生的这 20 年来,都发生了什么...
查看>>
听说玩这些游戏能提升编程能力?
查看>>
7 年工作经验,面试官竟然还让我写算法题???
查看>>
被 Zoom 逼疯的歪果仁,造出了视频会议机器人,同事已笑疯丨开源
查看>>
上古语言从入门到精通:COBOL 教程登上 GitHub 热榜
查看>>
哈哈哈哈,「00 后黑话破解器」火爆 GitHub,这波操作我给满分!
查看>>
再见,Eclipse...
查看>>
超全汇总!B 站上有哪些值得学习的 AI 课程...
查看>>
网络协议那些事儿,每一个程序员的必备知识,这次终于理顺了!
查看>>
如果你还不了解 RTC,那我强烈建议你看看这个!
查看>>
神器面世:让你快速在 iOS 设备上安装 Windows、Linux 等操作系统!
查看>>
沙雕程序员在无聊的时候,都搞出了哪些好玩的小玩意...
查看>>
新加坡总理的儿子,写了一本计算机入门书籍...
查看>>