博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Cesium入门7 - Adding Terrain - 添加地形
阅读量:7193 次
发布时间:2019-06-29

本文共 1263 字,大约阅读时间需要 4 分钟。

hot3.png

Cesium入门7 - Adding Terrain - 添加地形

Cesium中文网: | 国内快速访问:

Cesium支持流式的、可视化的全球高程投影地形地势、水形数据,包括海洋、湖泊、河流、山峰、峡谷和其他能够被三维展示出来的且效果比二维好的地形数据。像图层数据一样,Cesium引擎会从一个服务器上请求流式地形数据,仅请求那些基于当前相机能看到的需要绘制的图层上的数据。

Cesium官方提供了一些地形数据集的例子,以及如何配置这些参数。

  • : 高投影的arctic terrain
  • : 高投影的Pennsylvania terrain
  • : 一些地形数据配置和格式
  • : 是地形间的高度差异更加的优雅艺术

支持的地形数据格式

  • , Cesium团队自己开源的一种格式
  • Heightmap
  • Google Earth Enterprise

为了添加地形数据,我们需要创建一个CesiumTerrainProvider,提供一个url和一些配置想,然后将这个provider赋值给viewer.terrainProvider

此处,我们使用图层,该图层由Cesium ion提供,在“My Assets”中是默认提供的。我们可以用createWorldTerrainhelper函数创建一个由Cesium ion提供服务的。

// Load Cesium World Terrainviewer.terrainProvider = Cesium.createWorldTerrain({    requestWaterMask : true, // required for water effects    requestVertexNormals : true // required for terrain lighting});

***requestWaterMask***和***requestVertexNormals***是可选的配置项,告诉Cesium是否需要请求额外的水、光数据。这两个选项默认是设为false的。

最终,既然我们有了地形数据,我们需要更多的线条来使得地形数据背后的objects能够正确地显示,只有最前面、最上面的objects才能是可见的。

// Enable depth testing so things behind the terrain disappear.viewer.scene.globe.depthTestAgainstTerrain = true;

我们现在有地形数据和运动的水。纽约非常平坦,所以可以在上面的地形数据上自由的探索。举一个显而易见的例子,你可以跳转到更加崎岖的区域比如 Grand Canyon 或者 San Francisco。

关于地形数据的更多信息,请访问

Cesium中文网交流QQ群:807482793

Cesium中文网: | 国内快速访问:

转载于:https://my.oschina.net/u/1470240/blog/1932103

你可能感兴趣的文章
批量自动安装常用软件
查看>>
在Ubuntu上,使用SWT嵌入AWT/SWING代码导致Eclipse崩溃问题
查看>>
Mysql 的一些优化 (MyISAM和InnoDB)
查看>>
Linux中特殊符号的用法
查看>>
2.5-ls命令
查看>>
1.1-php编译安装
查看>>
记华为S5700S-28P-LI-AC一次重写VRP的经历
查看>>
Varnish的简单使用
查看>>
OGG运维优化脚本(十四)-信息同步类--定义文件自动下发
查看>>
策略模式
查看>>
字符设备(二)
查看>>
Linux TC的ifb原理以及ingress流控
查看>>
SSDT 结构体
查看>>
android 银联支付接入报nullexception异常
查看>>
配置OSPF
查看>>
EIGRP邻居关系
查看>>
x3850X5如何添加CPU和QPI Wrap Card及两节点配置说明
查看>>
12.3、bash脚本循环语句
查看>>
用C语言实现“智障”的棋盘游戏
查看>>
JavaScript的对象——灵活与危险
查看>>