Cesium专栏-terrain地形、3dtiles模型、gltf模型 高度采样
在Cesium中,对于terrain地形、3dtiles模型、gltf模型的高度采样是一个很基本的功能,基于此,可以做一些深度应用,而Cesium已经帮我们提供了相应的API,在这里,我帮大家总结一下,如果遇到了,可以当做帮助文档随时浏览。
terrain地形 高度采样(API: Cesium.sampleTerrainMostDetailed)
通过两点决定一条直线,求取这条直线在地表高度
- var start = Cesium.Cartesian3.fromDegrees(114, 30);
- var end = Cesium.Cartesian3.fromDegrees(115, 30);
- var positions = [Cesium.Cartographic.fromCartesian(start)];
- // 插值100个点(自定义)
- var count = 100;
- for (var i = 1; i < count; i++) {
- var cart = Cesium.Cartesian3.lerp(start, end, i / count, new Cesium.Cartesian3());
- positions.push(Cesium.Cartographic.fromCartesian(cart));
- }
- positions.push(Cesium.Cartographic.fromCartesian(end));
- var promise = Cesium.sampleTerrainMostDetailed(terrainProvider, positions);
- Cesium.when(promise, function (updatedPositions) {
- // 每个点的高度
- var height = [];
- for (var i = 0; i < updatedPositions.length; i++) {
- height.push(updatedPositions[i].height);
- }
- }

3dtiles模型 高度采样(API: Scene.clampToHeightMostDetailed)
- var start = new Cesium.Cartesian3(1216467.760147752, -4736154.3567799, 4081478.9167016773);
- var end = new Cesium.Cartesian3(1216183.8039071201, -4736456.592237458, 4081200.6372076278);
- // 插值100个点
- var count = 100;
- var positions = [];
- for (var i = 0; i <= count; i++) {
- positions.push(Cesium.Cartesian3.lerp(start , end , i / count, new Cesium.Cartesian3()));
- }
- scene.clampToHeightMostDetailed(positions).then(function (clampedCartesians) {
- // 每个点的高度
- var height = [];
- for (var i = 0; i < count; ++i) {
- height.push(Cesium.Cartographic.fromCartesian(clampedCartesians[i]).height);
- }
- }

gltf模型 高度采样(API: Scene.sampleHeightMostDetailed)
更多详情见下面链接文章:
Cesium专栏-terrain地形、3dtiles模型、gltf模型 高度采样
对本专栏感兴趣的话,可以关注一波
Cesium专栏-terrain地形、3dtiles模型、gltf模型 高度采样的更多相关文章
- Cesium 生成terrain地形数据----CTB方式及步骤
背景:项目前端使用Cesium,地形服务一直使用外网的,常常因为翻墙访问的问题,导致地形数据取不到,进而导致地球不能加载,故决定搭建自己的地形服务,彻底解决这个问题.博文包含以下几个过程: 下载原始地 ...
- cesium加载gltf模型点击以及列表点击定位弹窗
前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 之 ...
- Cesium 加载 gltf 模型
var viewer = new Cesium.Viewer('cesiumContainer', { /*帮助*/ navigationHelpButton: true, baseLayerPick ...
- cesium加载gltf模型
cesium加载gltf模型 一.采用vue-cesium:在项目里加载依赖包.命令如下: npm i --save vue-cesium 在main.js中加入如下代码: https://www.n ...
- Cesium专栏-大量gltf三维模型加载
Cesium 是一款面向三维地球和地图的,世界级的JavaScript开源产品.它提供了基于JavaScript语言的开发包,方便用户快速搭建一款零插件的虚拟地球Web应用,并在性能,精度,渲染质量以 ...
- Cesium专栏-地形开挖2-任意多边形开挖(附源码下载)
“任意多边形地形开挖” 是“地形开挖”的补充篇,在这节里,我们介绍关于如何使用任意多边形对地形进行开挖,同时,由于有不少小伙伴也咨询了关于“地形开挖”篇后序内容中的填充地形的效果,之前没放出来,是想让 ...
- GLTF模型查看器---优化器【转】
https://blog.csdn.net/weixin_43081805/article/details/88743277 Clay Viewer(我只想说好用,直接可以导出gltf的二进制glb格 ...
- vue中加载three.js的gltf模型
vue中加载three.js的gltf模型 一.开始引入three.js相关插件.首先利用淘宝镜像,操作命令为: cnpm install three //npm install three也行 二. ...
- 【百奥云GS专栏】全基因组选择之模型篇
目录 1. 前言 2. BLUP方法 ABLUP GBLUP ssGBLUP RRBLUP 3. 贝叶斯方法 BayesA BayesB BayesC/Cπ/Dπ Bayesian Lasso 4. ...
随机推荐
- 全球 43 亿 IPv4 地址已耗尽!IPv6,刻不容缓
大家都知道目前网络协议使用的主要是 IPv4,全称为 Internet Protocol version 4,作用是为每一个网络和每一台主机分配一个 IP,IP 地址是一个 32 位的二进制数,算下来 ...
- Go语言冒泡、选择、插入、快速排序实战浅析
Hello,各位小伙伴大家好,我是小栈君,今天为大家带来的分享是关于go语言中的排序实战浅析. 我们就实际操作关于go的冒泡排序.选择排序.插入排序和快速排序四种方式的理论和实战进行分享,希望能够为大 ...
- linux+docker+nginx如何配置环境并配置域名访问
一.环境准备 1)下载php环境包,下载地址为:https://www.php.net/downloads.php 2)安装docker,这个主要的作用就是用来安装mysql.你也可以不需要安装这个东 ...
- js2——定时跳转
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- C#DateTime格式转换全介绍
DateTime与字符串转换: DateTime()与转换为字符串主要依靠DateTime().ToString(string format) 函数,以我的理解,参数format大体分为单个字母和多个 ...
- CF1236B Alice and the List of Presents
题意翻译 有nn种物品和mm个背包,每种物品有无限个,现将若干个物品放到这些背包中,满足: 1.每个背包里不能出现相同种类的物品(允许有空背包): 2.在所有的mm个背包中,每种物品都出现过. 求方案 ...
- es6 babel 安装以及使用
1,安装好node(需要使用npm包管理工具) 2,在本地项目路径下npm init,格式化成功后会在项目下生成一个配置文件package.json 3,本地安装bable npm install - ...
- MongoDB的第二天(更新,删除,查询,索引)
Mongodb的更新方式有三种 update函数,操作符更新,save函数 update: 语法格式:db.COLLECTION_NAME.update({查询条件},{更新内容},{更新参数(可选) ...
- 2019 牛客国庆集训派对day1-C Distinct Substrings(exkmp+概率)
链接:https://ac.nowcoder.com/acm/contest/1099/C来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536 ...
- 如何正确的探索 Microsoft Ignite The Tour
Microsoft Ignite The Tour 是一年一度微软为全球开发者.IT专家.安全专家以及数据专家提供的为期两天,包含众多核心产品的实践性技术培训.2019.12.10-2019.12.1 ...