(一)Cesium的概念定義
Cesium是國外一個基于JavaScript撰寫的使用WebGL的地圖引擎,Cesium支持3D,2D,2.5D形式的地圖展示,可以自行繪制圖形,高亮區域,并提供良好的觸摸支持,且支持絕大多數的瀏覽器和mobile,CesiumJS是一個開放源代碼JavaScript庫,用于創建具有最佳性能,精度,視覺質量和易用性的世界一流的3D地球和地圖,從航空航天到智慧城市再到無人機,各行各業的開發人員都使用CesiumJS創建用于共享動態地理空間資料的互動式Web應用程式,CesiumJS建立在開放格式上,旨在實作強大的互操作性,從Cesium ion或其他來源獲取資料,使用CesiumJS進行可視化,并與臺式機或移動設備上的用戶共享,CesiumJS的下載量超過1,000,000,為數百萬用戶提供了強大的應用程式,整個定義來自官方網站,
(二)Cesium的安裝與配置環境
前面已經了解了什么是Cesium,現在就是開始使用了,說到安裝其實Cesium會有一個資源包,目前已經到了1.72版本了,下載下來在代碼進行參考即可,如果你網速夠給力,且可翻,也可不用下載資源包,在代碼中通過src將js與css格式在線參考,不過該方法會出現加載慢的特點,建議還是將資源包下載下來,本地參考,另外說到配置環境,對于前端來說,nodejs的環境必須要有的,看到很多博主用Python、tomcat以及IIS進行http環境搭建,本人使用的為git命令列輸入http-server的方式進行http服務的環境搭建的,不過原理大致一樣,配置完相關的環境,就可以寫出Cesium的第一例子了,
(三)Cesium的第一個實體
很多博主中第一個實體出現的第一段代碼基本都是var viewer = new Cesium.Viewer('cesiumContainer'),然后把h5的其他部分補齊,出現了一個大大的地球,于是小伙伴們感覺去嘗試了一下,發現事情并不簡單,大部分用該代碼出現的就是一個大大的黑框除了cesium自帶的一些東西外,并沒有出現地球,那是為什么那?好了不買關子了,這里不出現地球最主要的原因是版本變了,因為我們在加載上面的代碼的時候,默認使用的是必應的底圖,但在1.5版本以后,加載底圖不能說隨便加載了,你必須有必應的token才行,那就要去先去注冊一個token了,(必應地圖地址https://www.bingmapsportal.com/),如圖注冊完成以后的截圖:
token創建完成,就好操作了,代碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Use correct character set. -->
<meta charset="utf-8">
<!-- Tell IE to use the latest, best version. -->
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<!-- Make the application on mobile take up the full browser screen and disable user scaling. -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">
<title>Hello World!111</title>
<script src="https://www.cnblogs.com/yxd000/Build/Cesium/Cesium.js"></script>
<style>
@import url(../Build/Cesium/Widgets/widgets.css);
html, body, #cesiumContainer {
width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden;
}
</style>
</head>
<body>
<div id="cesiumContainer">
<div id="cesiumxin" style="position:fixed;left:0;z-index:99"><a href="http://cesium.xin" style="color:aliceblue;text-decoration:none">http://cesium.xin <label for="">cesium中文網 http://cesium.xin </label></a></div>
</div>
<script>
Cesium.BingMapsApi.defaultKey = "你的key";
var viewer = new Cesium.Viewer("cesiumContainer", {
animation: false, //是否創建影片小器件,左下角儀表
timeline: false, //是否顯示時間線控制元件
geocoder: false, //是否顯示地名查找控制元件
shouldAnimate: true,
baseLayerPicker: false, //是否顯示圖層選擇控制元件
imageryProvider: new Cesium.BingMapsImageryProvider({
url: "https://dev.virtualearth.net",
mapStyle : Cesium.BingMapsStyle.AERIAL }),
});
</script>
</body>
</html>
這時候你再去運行會發現,那個久違的地球出來了,如圖:
很多小伙伴也發現了,這個代碼中有幾行為 imageryProvider: new Cesium.BingMapsImageryProvider({ url: "https://dev.virtualearth.net",mapStyle : Cesium.BingMapsStyle.AERIAL }),這標記的紅色的代碼就有意思了,這個mapstyle就是地圖的格式啊,也就是說我們可以通過修改代碼中的這個值,這個地球也會變成不同的球體了,不行我們可以試試,
mapStyle : Cesium.BingMapsStyle.ROAD時出現的球體:同時還包括AERIAL、AERIAL_WITH_LABELS、ROAD、ORDNANCE_SURVEY、COLLINS_BART等必應帶的風格,可以自己去嘗試加載一下,
好了,學習Cesium第一部分的內容就結束了,后面將持續更新,有什么問題加QQ779059300一起學習交流,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/135517.html
標籤:HTML5
