Cesium
Cesium 是一款面向三維地球和地圖的,世界級的JavaScript開源產品。它提供了基於JavaScript語言的開發包,方便用戶快速搭建一款零插件的虛擬地球Web應用,並在性能,精度,渲染質量以及多平台,易用性上都有高質量的保證。
關於測量
測量是一個GIS系統最基本的,也是必備的模塊,網上也有很多相關開發者分享過關於Cesium測量的技術文章,風格各異,但是大同小異,只要弄清楚了原理以及方法,其實每個人都可以寫出自己的測量小工具。
測距
測距其實計算兩點之間的距離,這個計算方法可以使用最原始的直角三角形求斜邊的方法,但是我們也可以直接使用Cesium中Cartesian3接口的distance方法。
-
Cesium.Cartesian3.distance(firstPoint, secondPoint);
計算方法已經有了,我們要做的就是添磚加瓦,做成一個可供用戶交互的測距,並且實時顯示距離長度的效果。
// 注冊鼠標左擊事件 viewer.screenSpaceEventHandler.setInputAction(function (clickEvent) { var cartesian = viewer.scene.pickPosition(clickEvent.position); // 如果是第一次點擊 if (positions.length == 0) { addPoint(cartesian); // 存儲第一個點,並在點擊處繪制一個點entity // 同時注冊鼠標移動事件 }
……
更多詳情見小專欄:GIS之家cesium小專欄
對本專欄感興趣的話,可以關注一波