cesium获取相机状态
每次setViewer时,总是有心无力,在网上也是各种方法各种试,测试之后,这个中心点坐标好像不好确定。
还可在F12控制台打印viewer.camera.position等及pitch,roll,position一个方法。
参考这个链接https://blog.csdn.net/weixin_44058725/article/details/105949332。这里做笔记,怕自己忘了
//获取中心点
var result = viewer.camera.pickEllipsoid(new Cesium.Cartesian2(viewer.canvas.clientWidth / 2, viewer.canvas
.clientHeight / 2));
var curPosition = Cesium.Ellipsoid.WGS84.cartesianToCartographic(result);
var lon = curPosition.longitude * 180 / Math.PI;
var lat = curPosition.latitude * 180 / Math.PI;
console.log(lon,lat)
//打印相机heading/peath/roll
//获取相机参数时,也要用Cesium.Math.toDegrees函数,用和不用出来结果不相同的。直接拿来用setViewer,建议用//Cesium.Math.toDegrees
var camera=viewer.camera;
Cesium.Math.toDegrees(viewer.camera.heading)
Cesium.Math.toDegrees(viewer.camera.pitch)//Cesium.Math.toDegrees作用是把弧度转换成度数Cesium.Math.toDegrees(viewer.camera.roll)
console.log(camera)//相机对像,heading,pitch,height都有都可打印
//当前相机高度
var h = viewer.camera.positionCartographic.height;
var handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas); //此方法获取鼠标点击位置经纬度
handler.setInputAction(function (e) {
var position = viewer.scene.pickPosition(e.position);
//将笛卡尔坐标转化为经纬度坐标
var cartographic = Cesium.Cartographic.fromCartesian(position);
var longitude = Cesium.Math.toDegrees(cartographic.longitude);
var latitude = Cesium.Math.toDegrees(cartographic.latitude);
var height = cartographic.height;
console.log(longitude,latitude,height)
viewer.camera.setView({//定位到范围中心点
destination: Cesium.Cartesian3.fromDegrees(Number(longitude), Number(latitude), 2000),
orientation: {
heading: Cesium.Math.toRadians(180),//1
pitch: Cesium.Math.toRadians(-90),
roll: 0
}
});
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);
cesium获取相机状态相关推荐
- android 开启手电筒,android 9.0 获取手电筒状态以及打开/关闭手电筒
查了很多资料,其他博客大多都是介绍以前的的方案,基于9.0系统的基本没有找到,要么就不全,特别是获取手电筒状态的资料,下面就大致介绍一下: 打开和关闭的方法是:toggleLight 获取手电筒状态的 ...
- 2022-04-08 Android app小电筒(闪光灯)Torch 测试demo,获取手电筒状态。
一.直接上测试代码吧 package com.giada.flickerled;import androidx.annotation.RequiresApi; import androidx.appc ...
- GPUtil是一个Python模块,使用nvidia-smi从NVIDA GPU获取GPU状态
GPUtil是一个Python模块,使用nvidia-smi从NVIDA GPU获取GPU状态 一个Python模块,用于在Python中使用nvidia-smi以编程方式从NVIDA GPU获取GP ...
- AQS独占式获取同步状态和释放同步状态(源码阅读笔记)
1.Lock接口的实现基本都是通过聚合了一个同步器的子类来完成线程访问控制的,例如ReentrantLock的实现 abstract static class Sync extends Abstrac ...
- PHP获取CentOS服务状态,简单linux下php获取服务器状态代码
简单的linux下的php获取服务器状态的代码,不多说-直接上函数: function get_used_status(){ $fp = popen('top -b -n 2 | grep -E &q ...
- 精美图文讲解Java AQS 共享式获取同步状态以及Semaphore的应用
前言 上一篇万字长文 Java AQS队列同步器以及ReentrantLock的应用 为我们读 JUC 源码以及其设计思想做了足够多的铺垫,接下来的内容我将重点说明差异化,如果有些童鞋不是能很好的理解 ...
- 【Android 电量优化】电量优化 ( 网络状态获取 | 主动获取 WIFI 状态 | 被动获取 WIFI 状态 )
文章目录 一.获取 WIFI 状态 二.主动获取 WIFI 状态 三.被动获取 WIFI 状态 参考 Google 官方文档 : 优化电池续航时间 一.获取 WIFI 状态 在应用中执行某些操作 , ...
- 【Android 电量优化】电量优化 ( 充电状态获取 | 主动获取充电状态 | 广播接受者监听充电状态 | 被动获取充电状态 | 注册空广播接受者获取历史广播 )
文章目录 一.获取充电状态 二.被动获取充电状态 三.主动获取充电状态 参考 Google 官方文档 : 优化电池续航时间 一.获取充电状态 在应用中执行某些操作 , 如软件云端备份 , 从服务器端获 ...
- iOS 获取网络状态
在iOS开发者,获取网络状态比较常用 -(NSString *)getNetWorkStates{UIApplication *app = [UIApplication sharedApplicati ...
最新文章
- 全球工业互联网十大最具成长性技术
- 【JavaScript】JavaScript模拟Class
- 三中好用的数组去重方式
- RNN 循环神经网络系列 5: 自定义单元
- Linux内核中获取纳秒时间戳的方法
- LANG和NLS_LANG的区别
- 百度指数的价值以及分析的意义
- status_code想要得到302却得到200_200㎡室内淘气堡乐园要多少资金?淘气堡成本是怎么计算...
- python-求阶乘算法
- 2022春 哈工大《近世代数》习题作业解答汇总
- kmeans的手肘法
- 《方与圆》序人生控制论 第二章 认识自己
- 2048 Puzzle游戏攻略
- 美国教授如何判别申请的学生是否有潜力(Johnny翻译)
- 原来,阿里工程师才是隐藏的“修图高手”!
- 【Python CLI】第一章 CLI 应用程序介绍
- 城市售票网验证码图片的获取
- TAT/CKAAKN/T7/TOC/TRP肽修饰四氧化三铁 TAT/CKAAKN/T7/TOC/TRP-Fe3O4研究
- Android开发小技巧 | 一句命令搞定截屏
- 操作系统-复习-考题预测及解析-期末考试(南航)