Cesium 是一款面向三維地球和地圖的,世界級的JavaScript開源產品。它提供了基於JavaScript語言的開發包,方便用戶快速搭建一款零插件的虛擬地球Web應用,並在性能,精度,渲染質量以及多平臺,易用性上都有高質量的保證。ide
關於淹沒分析
淹沒分析主要研究的是某一塊指定的研究的區域,小到一個地塊,而後大到一個小區、一個小鎮、亦或是一個城鎮、一個城市、一個國家在遇到洪水時,在極端狀況下,沒有任何的排水設施、也沒有任何的泄洪措施等(固然這種假設確定是不存在的)模擬的隨時間遷移的淹沒狀況。性能
須要具有的參數:淹沒範圍,水面上升速度(固然,若是研究區域所處平原,或者地形不明顯,這種模擬會效果不佳)google
效果圖
url
具體操做
一、初始化,加載影像和地形spa
-
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
-
})
-
});
二、指定研究區域插件
-
var positions = [114......., 30........., 114......., 30........., 114......., 30........., 114......., 30........];
三、添加polygon實體做爲顯示對象code
-
var waterHeight = 0;
-
var entity = viewer.entities.add({
-
polygon: {
-
hierarchy: Cesium.Cartesian3.fromDegreesArray(positions),
-
material: Cesium.Color.RED.withAlpha(0.5),
-
extrudedHeight: new Cesium.CallbackProperty(function () {
-
return waterHeight;
-
})
-
}
-
});
更多詳情見小專欄此文章:GIS之家cesium小專欄orm
文章提供源碼,對本專欄感興趣的話,能夠關注一波對象