当前位置: 首页 > news >正文

昆明网站建设.com网络seo啥意思

昆明网站建设.com,网络seo啥意思,网络结构图怎么画,长沙专业网站建设怎么做先看效果: 在cesium中,我们有时需要倾斜相机视角去观察物体,如相机俯视45观察物体。 cesium的api提供了倾斜相机视角的配置,但是直接使用cesium的api不能达到我们想要的效果。 函数如下: function flyToBox() {let l…

先看效果:
在这里插入图片描述
在cesium中,我们有时需要倾斜相机视角去观察物体,如相机俯视45观察物体。
cesium的api提供了倾斜相机视角的配置,但是直接使用cesium的api不能达到我们想要的效果。
函数如下:

function flyToBox() {let longitude = -114;let latitude = 40;let pitch = -45;let height = 4000;// 创建一个蓝色盒子const blueBox = viewer.entities.add({name: "Blue box",position: Cesium.Cartesian3.fromDegrees(longitude, latitude, height / 2),box: {dimensions: new Cesium.Cartesian3(1000.0, 1000.0, 1000.0),material: Cesium.Color.BLUE,},});let center = Cesium.Cartesian3.fromDegrees(longitude, latitude, height);// 相机飞行到指定位置viewer.camera.flyTo({destination: center,orientation: {// 定义相机朝向(方向,俯仰角,横滚角)heading: Cesium.Math.toRadians(360),pitch: Cesium.Math.toRadians(pitch),roll: Cesium.Math.toRadians(0),},duration: 2,});
}

效果如下在这里插入图片描述
可以看到物体已经不在视口范围内了。
why?
原因很简单,我们看到了视野都是相机的视野。
cesium相机默认的角度(picth=-90)如下:
在这里插入图片描述
在这里插入图片描述

当配置了orientation,将相机偏移了-45度,因此物体超出了相机的视野,我们也就看不到物体了。
在这里插入图片描述

想要看到物体也很简单,将相机平移x距离即可。回忆一下高中的知识,在直角三角形中,已知了一个角α和边h,可以求x。即:

x = tanα * h

接下来又是另一个难题。我们算出来需要平移x距离,x单位是米(因为h单位是米),而相机的位置的以经纬度确认的,因此需要做米到经纬度的转换,这里不必赘述,请看我之前的博客。完整代码如下:

function flyToBox() {let longitude = -114;let latitude = 40;let pitch = -45;let height = 4000;// 创建一个蓝色盒子const blueBox = viewer.entities.add({name: "Blue box",position: Cesium.Cartesian3.fromDegrees(longitude, latitude, 0),box: {dimensions: new Cesium.Cartesian3(1000.0, 1000.0, 1000.0),material: Cesium.Color.BLUE,},});// 计算相机的偏移量let offset = tan(90 + pitch) * height * 1;// 向南偏移,计算新的经纬度let { latitude: newLat, longitude: newLon } = offsetToLatLon(latitude,longitude,0,offset);let center = Cesium.Cartesian3.fromDegrees(newLon, newLat, height);//   let center = Cesium.Cartesian3.fromDegrees(longitude, latitude, height);// 相机飞行到指定位置viewer.camera.flyTo({destination: center,orientation: {// 定义相机朝向(方向,俯仰角,横滚角)heading: Cesium.Math.toRadians(360),pitch: Cesium.Math.toRadians(pitch),roll: Cesium.Math.toRadians(0),},duration: 2,});
}/*** 计算给定角度的正切值* * @param {number} degrees 输入的角度值* @returns {number} 返回计算得到的正切值*/
function tan(degrees) {// 将角度转换为弧度const angleInRadians = degrees * (Math.PI / 180);return Math.tan(angleInRadians);
}
http://www.hengruixuexiao.com/news/22431.html

相关文章:

  • 在乐文网站做翻译靠谱吗网站推广方法有哪些
  • 国外做的好看的网站设计专业的郑州网站推广
  • 响应式模板苏州网站优化公司
  • 跑腿个人网站怎么做广州网站设计制作
  • 商城网站做推广方案怎么做自己的网站
  • 网站建设销售提成建设一个网站的具体步骤
  • 东莞网站制作网站线上营销平台有哪些
  • 先做网站还是先做appapp推广注册接单平台
  • 中国建设银行官网站e路护航快速排名程序
  • 手机就可以直接做设计的网站百度seo排名优化教程
  • 有没有做语文题的网站百度关键词搜索广告的优缺点
  • 知名购物网站有哪些百度seo排名优化公司哪家强
  • web前端开发工具有哪些惠州抖音seo策划
  • wordpress aj提交评论杭州seo博客
  • 天津微信网站中国搜索引擎份额排行
  • 公司官网怎么设计搜索引擎优化的五个方面
  • 创建网站赚钱百度网盘网页版登录
  • 室内设计是真的烂大街了吗快速优化排名公司推荐
  • 网站上可以做直播吗网络seo外包
  • 湖南铁军工程建设有限公司网站怎么在百度免费推广
  • 安卓程序开发用什么语言西安网站seo工作室
  • 合肥房地产最新消息江苏泰州seo网络优化推广
  • 贵州网站制作设计公司怎么在百度推广自己的公司
  • 左权网站建设百度seo优化排名
  • 新乡网站推广公司推广工具
  • 做网站虚拟主机和云服务器吗建网站的公司排名
  • 自己做的网站有排名吗百度竞价推广效果好吗
  • 重庆可作为推广的网站nba排名最新赛程
  • 新注册公司网站免费怎么做百度网站大全首页
  • 南宁市网站开发建设市场推广方式有哪几种