Cesium 问题:获取高度值,高度值又是相对于谁来说的
文章目录
- 问题
- 分析
问题
今天在开发中,甲方提出一个这样的问题,你的高度是怎么算出来的,对此,我只知道使用并不知道怎么来的,因此特意查了一番资料,希望帮助到大家
分析
-
在 Cesium 中,我们可以使用 Cesium 中提供的方法获取地形高度值。使用 viewer.scene.pickPosition 方法来获取指定屏幕位置的地理坐标和高度信息。该方法接受一个屏幕坐标作为参数,并返回一个 Promise 对象,该对象将解析为包含地理坐标和高度信息的 Cartesian3 对象。
-
以下是一个示例代码,演示如何使用 pickPosition 方法获取屏幕位置的高度值:
var viewer = new Cesium.Viewer('cesiumContainer');// 创建一个 ScreenSpaceEventHandler 对象来处理屏幕空间事件
var handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);// 注册鼠标左击事件的处理函数
handler.setInputAction(function(movement) {// 获取鼠标点击位置的地理坐标和高度var pickedObject = viewer.scene.pickPosition(movement.position);// 判断是否拾取到了地理位置if (Cesium.defined(pickedObject)) {// 获取地理坐标和高度信息var position = pickedObject.position;var cartographicPosition = Cesium.Cartographic.fromCartesian(position);var height = cartographicPosition.height;console.log('点击位置的高度值为:', height);}
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);
-
在上述代码中,我们首先创建了一个 Viewer 对象并创建了一个 ScreenSpaceEventHandler 对象来处理屏幕空间事件。
-
然后,我们注册了鼠标左击事件的处理函数。在处理函数中,我们使用 viewer.scene.pickPosition 方法来获取鼠标点击位置的地理坐标和高度信息。
-
如果成功拾取到地理位置,我们将获取到的 Cartesian3 对象转换为 Cartographic 对象,并从中提取出高度值。
-
最后,我们将高度值输出到控制台。
-
请注意,使用 pickPosition 方法获取高度值需要进行地形数据的加载。如果未加载地形数据,将无法获得准确的高度值。你可以根据实际情况进行相应的地形数据加载配置。
那么,Cesium 中提供的方法获取地形高度值是怎么来的,相对于什么参考得出的值
-
在 Cesium 中,获取地形高度值是通过地形数据进行计算得出的。Cesium使用了魔方(Cube)地形数据格式来表示地形。这个格式将地球表面划分为许多小的方块,每个方块包含一个高程值。当需要获取某个位置的高度值时,Cesium会根据该位置所在的方块以及邻近的方块,进行插值计算来估算高度值。
-
具体来说,Cesium使用了地形切片(Terrain Tile)的概念。地形切片是一种预先生成的地形数据块,每个切片都包含了一定区域的地形高程数据。这些地形切片按照一定的层次结构组织起来,构成了整个地球的地形数据。
-
当你使用 viewer.scene.pickPosition 方法获取地理位置的高度时,Cesium内部会找到包含该位置的最适合的地形切片,并从该切片中提取出相应的高度值。
-
高度值是相对于基准椭球体(reference ellipsoid)计算得出的。椭球体是一个与地球形状相似的数学模型,它在地球表面处处与地球相切。Cesium使用国际椭球体(WGS84)作为基准椭球体。高度值表示的是地表相对于基准椭球体表面的垂直距离。
-
需要注意的是,地形数据的精度和分辨率对高度的计算精度有影响。较高的地形数据分辨率可以提供更精确的高度值,但同时也需要更多的计算资源和加载时间。
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
Cesium 问题:获取高度值,高度值又是相对于谁来说的
文章目录 问题分析 问题 今天在开发中,甲方提出一个这样的问题,你的高度是怎么算出来的,对此,我只知道使用并不知道怎么来的,因此特意查了一番资料,希望帮助到大家 分析 在 Cesium 中,我们可以使…...
第三、四、五场面试
第三场 共享屏幕做题(三道简单题) 替换空格成%20(双指针) 删除升序链表中的重复元素(指针)有效的括号(栈) 第四场、第五场 自我介绍 项目拷打 整个项目架构rpc模块的情况分析的数…...
![](https://img-blog.csdnimg.cn/50284547c84845ccb3d553a93ca74ac6.png)
力扣-290.单词规律
Idea 先建立一个hashmap,记录s串中的每个单词以及对应的下标再建立一个hashmap,记录pattern串中相同字母以及对应的下标遍历pattern串时,遇到不同字母存到pat表中,同时将下标对应的s中的单词存入到查重test集中,因为如…...
![](https://img-blog.csdnimg.cn/img_convert/827efc4731e24360f605f4c49d9efe25.png)
常见限流算法学习
文章目录 常见限流算法学习前言限流算法基本介绍固定窗口计数器限流算法计数器限流算法相关介绍计数器限流算法的实现(基于共享变量)计数器限流算法的实现(基于Redis) 滑动窗口计数器算法滑动时间窗口算法相关介绍介绍滑动时间窗口…...
![](https://www.ngui.cc/images/no-images.jpg)
JS面试相关
深拷贝、浅拷贝、递归、优化 扁平化 柯里化 this指向原型 继承 call、apply、bind js取整的方法,parseInt第二个参数是什么 forEach和map有什么区别,使用场景? 内存泄漏的场景 原型链原型 严格模式 Js中for in 和for of的区别 slice、splice、…...
![](https://img-blog.csdnimg.cn/0d76fd4314aa476aa43edcbbd9f20648.png)
SSRF漏洞
Server-Side Request Forgery:服务器端请求伪造 目标:网站的内部系统 形成的原因 攻击者构造形成由服务器端发起请求的译者安全漏洞。 由于服务端提供了从其他服务器应用获取数据的功能,且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内…...
![](https://img-blog.csdnimg.cn/1593e56219cd44d585f974e225d2c5d3.png)
Qt5开发及实例V2.0-第十八章-Qt-MyselfQQ实例
Qt5开发及实例V2.0-第十八章-Qt-MyselfQQ实例 第18章-Qt MyselfQQ18.1 概述18.2 、发送文件18.3 、接收文件18.4 、保证传输的安全和稳定18.5 、总结 本章相关例程源码下载1.Qt5开发及实例_CH1801.rar 下载 第18章-Qt MyselfQQ 18.1 概述 MyselfQQ是一个基于Qt5框架开发的轻量…...
![](https://img-blog.csdnimg.cn/0905588c18d44bb1aae236c4278ecd79.png)
当下IT测试技术员的求职困境
从去年被裁到现在,自由职业的我已经有一年没有按部就班打卡上班了。期间也面试了一些岗位,有首轮就挂的,也有顺利到谈薪阶段最后拿了offer的,不过最后选择了拒绝。 基于自己近一年的面试求职经历,我想聊聊当下大家在求…...
![](https://www.ngui.cc/images/no-images.jpg)
MR混合现实情景实训教学
MR混合现实技术是一种将虚拟现实与现实场景相融合的创新技术,可以广泛应用于各个领域。其中,混合现实情景实训教学是MR技术的一个重要应用场景。 在医学专业方面,医学生常常需要通过实际操作来提升自己的技能水平,然而传统的实训方…...
![](https://www.ngui.cc/images/no-images.jpg)
嵌入式C++总结
1、new delete与malloc free区别 new delete是运算符,malloc free是函数。 前者不需要传入大小,后者需要。 前者会调用构造、析构函数,后者不会。 前者不需要强制转换,后者需要。 2、智能指针 智能指针是避免忘记释放动态申请对象…...
![](https://img-blog.csdnimg.cn/221dc9dd3a3b4f028a25c0ac3d3d346b.png)
C语言之内存函数篇(3)
目录 memcpy memcpy的使用 memcpy的模拟实现 NO1. NO2. memcpy可否实现重叠空间的拷贝 my_memcpy memcpy memmove memmove memmove 分析 代码 memset memset的使用 memcmp memcmp的使用 <0 0 >0 今天我们继续介绍几个重要的内存操作函数。&…...
![](https://img-blog.csdnimg.cn/img_convert/9173914d1f4dc008c6448fe9427c6c46.png)
java面试题-学成在线项目
1、详细说说你的项目吧 从以下几个方面进行项目介绍: 1、项目的背景,包括:是自研还是外包、什么业务、服务的客户群是谁、谁去运营等问题。 2、项目的业务流程 3、项目的功能模块 4、项目的技术架构 5、个人工作职责 6、个人负责模块的详细说…...
![](https://www.ngui.cc/images/no-images.jpg)
ViewBinding——Android之视图绑定
高版本的gradle不再支持 kotlin-android-extensions插件,因此view的绑定方式也有所改变。 1.启用视图绑定 android {...viewBinding {enabled true}} 如果想在生成绑定类时忽略某个布局文件,请将 tools:viewBindingIgnore"true" 属性添加到…...
![](https://www.ngui.cc/images/no-images.jpg)
vue学习-04vue的props配置项和mixin混入
今天仍然就是敲vue的一个demo,vue的props配置项和mixin混入 props配置项 Vue.js 中的 props 是用于在父组件向子组件传递数据的配置项。通过 props,你可以将父组件中的数据传递给子组件,并在子组件中使用这些数据。以下是关于 props 配置项…...
![](https://img-blog.csdnimg.cn/e0c8f40ff80f46f99a87e858bafc1bfa.png)
九、多项式朴素贝叶斯算法(Multinomial NB,Multinomial Naive Bayes)(有监督学习)
Multinomial Naive Bayes:用于多项式模型的Naive Bayes分类器 一、算法思路 多项式Naive Bayes分类器适用于离散特征分类(如文本分类中的字数) 多叉分布通常需要整数特征计数 不过,在实际应用中,分数计数(…...
![](https://img-blog.csdnimg.cn/86d3c8cd7ebe4bcb8ecc197f74dfa78f.png)
数据结构上机练习——单链表的基本操作、头文件、类定义、main函数、多种链表算法的实现,含注释
文章目录 单链表的基本操作实现1.头文件2.类定义和多种算法的实现2.1创建空表2.2头插法创建n个元素的线性链表2.3一个带头节点的链表存放一组整数,设计一个算法删除值等于x的所有节点。2.4计算线性表中值为偶数的节点个数2.5一个带头节点的单链表heada存放一组整数&…...
![](https://img-blog.csdnimg.cn/img_convert/a5be7ea9c4f2ab6511d0efd9d3d9d0c4.jpeg)
如何通过AI视频智能分析技术,构建着装规范检测/工装穿戴检测系统?
众所周知,规范着装在很多场景中起着重要的作用。违规着装极易增加安全隐患,并且引发安全事故和质量问题,例如,在化工工厂中,倘若员工没有穿戴符合要求的特殊防护服和安全鞋,将有极大可能受到有害物质的侵害…...
![](https://img-blog.csdnimg.cn/8c8768b4cf164c429aae3c619b620eea.png)
C语言自定义类型(上)
大家好,我们又见面了,这一次我们来学习一些C语言有关于自定义类型的结构。 目录 1.结构体 2位段 1.结构体 前面我们已经学习了一些有关于结构体的知识,现在我们进行深入的学习有关于它的知识。 结构是一些值的集合,这些值称为…...
![](https://www.ngui.cc/images/no-images.jpg)
Python - 小玩意 - 圣诞树背景音乐弹窗
import turtle as t import tkinter as tk import pygame import random as r import threading import time# 初始化背景音乐 def initialize_music():file r"./music/周杰伦-蜗牛.mp3"pygame.mixer.init()pygame.mixer.music.load(file)pygame.mixer.music.play()…...
![](https://img-blog.csdnimg.cn/130f9773fde24b84aa2c078729dd708a.jpeg)
The 2023 ICPC Asia Regionals Online Contest (1) E. Magical Pair(数论 欧拉函数)
题目 T(T<10)组样例,每次给出一个n(2<n<1e18), 询问多少对,满足 答案对998244353取模,保证n-1不是998244353倍数 思路来源 OEIS、SSerxhs、官方题解 2023 ICPC 网络赛 第一场简要题解 - 知乎 题解 官方题解还没有…...
![](https://img-blog.csdnimg.cn/5f508074853e4d8aab8603a0a2387c07.gif#pic_center)
<十三>objectARX开发:模拟实现CAD的移动Move命令
一、目的 实现类似于CAD的移动命令,选择对象,移动到指定位置,移动过程中对象跟随鼠标移动。效果如下: 二、关键步骤 选择对象,打开实体判断类型:acedEntSel()、acdbOpenObject()、isKindOf()。指定基点:acedGetPoint()。移动模型,追踪光标移动对象实体:acedGrRead()…...
![](https://www.ngui.cc/images/no-images.jpg)
Autosar基础:模式管理-EcuM
ECUM目录 前言一、ECUM状态机二、Fixed和Flexible模式的区别与联系三、状态详解3.1.Startup3.2.UP3.3.RUN3.4.Sleep3.5.Shutdown三、EcuM唤醒源3.1 CAN Trcv唤醒3.2 唤醒后操作前言 根据Autosar对于模式管理的需求定义,模式管理有以下模块: ①ECU State Manager(EcuM):管理…...
![](https://www.ngui.cc/images/no-images.jpg)
代码随想录Day42 | 01背包问题| 416. 分割等和子集
01背包问题(Acwing) 有 N 件物品和一个容量是 V的背包。每件物品只能使用一次。 第 i 件物品的体积是 vi,价值是 wi。 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。 输出最大价值。 输入…...
![](https://img-blog.csdnimg.cn/img_convert/3db94cbd708fd3100b10caf74cbd3c51.png)
UML六大关系总结
UML六大关系有:继承、关系、聚合、组合、实现、依赖。分为通过图和代码总结这些关系。 1、继承 继承(Inheritance):表示类之间的继承关系,子类继承父类的属性和方法,并可以添加自己的扩展。 继承&#x…...
![](https://img-blog.csdnimg.cn/f18b605ee9984ac1b943f30e55d29a50.jpeg)
ElementUI基本介绍及登录注册案例演示
目录 前言 一.简介 二.优缺点 三.Element完成登录注册 1. 环境配置及前端演示 1.1 安装Element-UI模块 1.2 安装axios和qs(发送get请求和post请求) 1.3 导入依赖 2 页面布局 2.1组件与界面 3.方法实现功能数据交互 3.1 通过方法进行页面跳转 3.2 axios发送get请求 …...
![](https://img-blog.csdnimg.cn/134fa22e85434f7b82b1f0aa62c0591c.png)
Python爬虫-某网酒店评论数据
前言 本文是该专栏的第6篇,后面会持续分享python爬虫案例干货,记得关注。 本文以某网的酒店数据为例,采集对应酒店的评论数据。具体思路和方法跟着笔者直接往下看正文详细内容。(附带完整代码) 注意:本文的案例“数据集”,选用的是本专栏上一篇“Python爬虫-某网酒店数…...
![](https://img-blog.csdnimg.cn/bceb5732cad64cb7a55c694c74b7f945.png)
C# Onnx Yolov8 Detect 水果识别
效果 项目 代码 using Microsoft.ML.OnnxRuntime; using Microsoft.ML.OnnxRuntime.Tensors; using OpenCvSharp; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System…...
![](https://img-blog.csdnimg.cn/e2aa507f908241a68e4fc6cc895a53f5.png)
测试网页调用本地可执行程序(续1:解析参数中的中文编码)
学习测试网页调用本地可执行程序还遗留一个问题,即网页中调用带中文参数的命令时,本地可执行程序接收到的参数字符串里的中文都转换成了编码模式,看起来如下所示: <a href TestPageCall:-a你好>启动测试程序</a><…...
![](https://img-blog.csdnimg.cn/d9180220903c478a92e101fc07679da2.png)
C++入门知识
Hello,今天我们分享一些关于C入门的知识,看完至少让你为后面的类和对象有一定的基础,所以在讲类和对象的时候,我们需要来了解一些关于C入门的知识。 什么是C C语言是结构化和模块化的语言,适合处理较小规模的程序。对…...
![](https://www.ngui.cc/images/no-images.jpg)
spring和springmvc常用注解
1.Spring常用注解: 1)Repository将DAO类声明为Bean 2)Service用于修饰service层的组件 3)Controller通常作用在控制层,将在Spring MVC中使用 4)Component是一个泛化的概念,仅仅表示spring中的一…...
![](https://img-blog.csdnimg.cn/img_convert/0f6f0a9050b687f1f56a62f147ed8222.png)
wordpress调用最新文章模板/哪里有专业的培训机构
在抖音,剪辑解说9.6分热门神剧《权游》的抖主,仅依靠流量费月收入过万,积累一定量粉丝后接推广的每集平均收费6500。。。有句话说得好,机会留给有准备的人;投资什么,都不如投资好自己。学习1-3个月就能碾压…...
![](/images/no-images.jpg)
温州市营销网站建设/推广普通话手抄报内容怎么写
我们想要用Python获得一些有关系统的各种信息的时候就不得不想到os的environ,那这里面都具体包含了那些内容呢? 简介 对于官方的解释,environ是一个字符串所对应环境的映像对象。这是什么意思呢?举个例子来说,environ[…...
![](/images/no-images.jpg)
网站建设公司怎么做业务/北京优化网站方法
cocoapods是个大坑,玩过的都懂。刚玩的时候被折磨得死去活来是常态,反复安装删除,各种报错也是常态。如果不怕麻烦,我还是推荐自己去gitHub上下载源码就好了,没必要用这玩意儿。在国内由于伟大的GFW,使得co…...
![](/images/no-images.jpg)
济南自助建站/网店推广的重要性
MVC方式: 显示提示框,并返回上一页 return Content("<script>alert(暂时没有实践作业!);history.go(-1);</script>"); Redirect("/控制器/视图?参数"); return Redirect("/Home/Index?id" id …...
![](/images/no-images.jpg)
wordpress 显示全文/北京官网seo收费
1、在黄金期内一定会面临很多压力,但千万不要让自己在"焦虑"状态下沉浸很久,因为焦虑会取代你的能力。相信坚持走下去的过程中会有答案。 2、正确地审视自己的能力。中国的特殊现状造就了一大批年轻的高管,机会够好&am…...
![](/images/no-images.jpg)
武汉网站建设哪家好/网络推广软件有哪些
根据规划, 调试OsgEarth源码每周1800行源码抄写。 目前鬼火引擎8377行。正好从8月22日开始,到9月底,5周完成。 即:分配到周,应该达到下面的目标。 8月29日时,剩6577行(实际6438行,完…...