Cesium
Cesium 是一款面向三維地球和地圖的,世界級的JavaScript開源產品。它提供了基於JavaScript語言的開發包,方便用戶快速搭建一款零插件的虛擬地球Web應用,並在性能,精度,渲染質量以及多平台,易用性上都有高質量的保證。
關於等高線
等高線指的是地形圖上高程相等的相鄰各點所連成的閉合曲線。把地面上海拔高度相同的點連成的閉合曲線,並垂直投影到一個水平面上,並按比例縮繪在圖紙上,就得到等高線。等高線也可以看作是不同海拔高度的水平面與實際地面的交線,所以等高線是閉合曲線。在等高線上標注的數字為該等高線的海拔。Cesium中的等高線主要是對Material進行操作。
效果圖
簡單的認知
先上幾張圖,對於等高線有個基本的直觀了解,圖片均來源於百度,如有侵權,請告知。
Cesium中等高線的做法
原理:修改Globe的Material屬性,適應於全球的
具體步驟
1、並初始化地球,調用全球地形服務
-
Cesium.Ion.defaultAccessToken = 'xxxx';
-
var viewer = new Cesium.Viewer('cesiumContainer', {
-
imageryProvider: new Cesium.UrlTemplateImageryProvider({
-
url: 'http://www.google.cn/maps/vt?lyrs=s@716&x={x}&y={y}&z={z}'
-
}),
-
terrainProvider: Cesium.createWorldTerrain({
-
requestVertexNormals: true,
-
requestWaterMask: true
-
})
-
});
2、開啟深度測試
-
viewer.scene.globe.enableLighting = true;
3、設置幾個等高線必備的參數
-
var minHeight = -414.0; // 最小高度-例:最低接近死海高度
-
var maxHeight = 8777.0; // 最大高度-例:最高接近珠峰高度
-
var contourColor = Cesium.Color.RED.withAlpha(0.4); // 等高線的顏色
-
var contourSpacing = 200.0; // 等高線的等間距
-
var contourWidth = 1.0; // 等高線的寬度
更多詳情見小專欄:GIS之家cesium小專欄
文章提供源碼,對本專欄感興趣的話,可以關注一波