首页 > 其他分享 >cesium 相机以某点为中心旋转

cesium 相机以某点为中心旋转

时间:2023-07-20 10:45:58浏览次数:23  
标签:const viewer 某点 cameraHeight 相机 Cesium gpsPoint cesium Math

 renderTargetCamera() {         const { viewer } = this.state         const _this = this
        viewer.camera.moveEnd.addEventListener(function () {
            const { gpsamera, cameraHeightInit } = _this.state             let cameraHeight = cameraHeightInit             let gpsPoint = gpsamera[0][0]             if (!gpsamera) { return }             // console.log('cameraHeight--', gpsPoint, cameraHeight)             if (!cameraHeight) {                 // 倾斜之后,需调整相机高度                 cameraHeight = Math.round(viewer.camera.positionCartographic.height);                 // viewer.zoomTo(_labelEntity, new Cesium.HeadingPitchRange(0.0, Cesium.Math.toRadians(-25.0), cameraHeight));                 _this.setState({ cameraHeightInit: cameraHeight })                 setTimeout(function () {                     let center = Cesium.Cartesian3.fromDegrees(gpsPoint.lng, gpsPoint.lat, 1000.0);                     viewer.camera.lookAt(center, new Cesium.HeadingPitchRange(0.0, -Math.PI / 4, cameraHeight));                 }, 300)
            }
        });     }

标签:const,viewer,某点,cameraHeight,相机,Cesium,gpsPoint,cesium,Math
From: https://www.cnblogs.com/zwjun/p/17567679.html

相关文章

  • 张正友相机标定流程(程序)
    写在前面OpenCV存储数据的方式:比如所有图像的角点坐标我可以定义一个对象:InputArrayOfArrays_imagePointsInputArray这个接口类可以是Mat、Mat_<T>、Mat_<T,m,n>、vector<T>、vector<vector<T>>、vector<Mat>这里面以vector<vector<T>>为例:最外面的vector的每个元素(也就......
  • cesium左键事件取值
    import{ScreenSpaceEventHandler,ScreenSpaceEventType, MathascMath,ShadowMode,Color,Cartographic,Cartesian2,Cartesian3,defined}from'cesium';functionbindMapClickEvent(){if(!handler){handler=newScreenSpaceEventHand......
  • Cesium被接入数字孪生系统后会发生怎样的改变?
    众所周知,Cesium凭借其开源免费的特点一直垄断着整个三维GIS的生态系统,但是随着数字孪生技术的发展以及各项新需求的不断涌现,Cesium与数字孪生系统相结合的潜力也逐渐凸显。一般而言,Cesium如果想要升级视效就需要去用CesiumForUnity或是CesiumForUnreal这类游戏引擎插件。但是无论......
  • 三维GIS渲染引擎盘点,以Cesium为核心的拓展优化
    目前,以Cesium为核心的各类产品繁多,本文将挑选一些以Cesium为核心的软件案例,为大家进行介绍。1.CesiumJSCesiumJS相信凡是GIS行业相关人员都特别熟悉了,CesiumJS是一款开源的JavaScript库,用于创建高性能的地球可视化应用程序。它基于WebGL技术,可以在现代的Web浏览器中实现各种三......
  • 数字孪生系统如何整合CesiumJS?整合后会产生怎样的化学反应?
    数字孪生有关的项目中,智慧城市一直是一个比较重要的类型,但是这类智慧城市项目往往包含了大量的GIS相关数据,例如倾斜摄影、DEM、DOM、地形数据等。这时,将GIS系统融合进数字孪生系统的需求就出现了。这时一个新的问题就出现了,如果将GIS系统和数字孪生系统进行融合,那么该如何保证融......
  • 【开机10】解决出现问题,你的PIN不可用,单击以重新设置PIN 无法打开相机 设置我的PIN 登
    \(弄了1.5个小时,找到这个视频,终于弄好了!!!!!!\)\(如果各位基友出现这种问题,可以参考。\)【开机10】解决出现问题,你的PIN不可用,单击以重新设置PIN无法打开相机设置我的PIN登录选项诊断启动禁用服务后问题解决......
  • 从零开始一起学习SLAM | 相机成像模型
    上一篇文章《从零开始一起学习SLAM|为啥需要李群与李代数?》以小白和师兄的对话展开,受到了很多读者的好评。本文继续采用对话的方式来学习一下相机成像模型,这个是SLAM中极其重要的内容,必须得掌握哦~小白:师兄,上次听你讲了李群李代数,有种“听君一席话胜读十年书”的赶脚~后来看书感......
  • GIS系统想要实现Cesium For Unreal的视觉效果是否有捷径可走?
    对于大多数GIS开发人员来说,CesiumJS都是比较熟悉的引擎,但是相比较CesiumForUnreal而言,CesiumJS的视觉效果就显得差强人意了,因此一些GIS开发人员对CesiumForUnreal是存在需求的。但是,想要用好东西总是存在代价。由于CesiumForUnreal本身是虚幻引擎的一个插件,这就意味着如果......
  • cesium 加载geoserver wmts
    遇到问题:①加载瓦片服务时,发现{TileRow}/{TileCol}参数不对,刚好是等级大了一倍;解决方法:tileMatrixLabels:["1","2","3","4","5","6","7","8","9","10","11"] ,注意是从1开始,不是从0开始。......
  • Cesium学习笔记3——加载topojson和Geojson
    在根目录下新建bucket.css@import"../Build/CesiumUnminified/Widgets/widgets.css";@import"../Build/CesiumUnminified/Widgets/lighter.css";html{height:100%}body{background:#000;color:#eee;font-family:sans-serif;font-size:9pt;padding:0;margin:0;w......