小編給大家分享一下Cesium如何批量加載立體線,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創新互聯技術團隊十余年來致力于為客戶提供做網站、成都網站建設、品牌網站建設、成都營銷網站建設、搜索引擎SEO優化等服務。經過多年發展,公司擁有經驗豐富的技術團隊,先后服務、推廣了數千家網站,包括各類中小企業、企事單位、高校等機構單位。
Cesium的官網程序樣例中,如何把一條線,畫成一個立體的形狀,詳細地址為:https://cesiumjs.org/Cesium/Build/Apps/Sandcastle/index.html?src=Corridor.html&label=Geometries
Cesium的官網程序樣例中,如何加載geojson的數據,詳細地址為:https://cesiumjs.org/Cesium/Build/Apps/Sandcastle/index.html?src=GeoJSON%20and%20TopoJSON.html&label=DataSources
那么,如何將geojson的數據,批量的加載成立體的線狀模式呢,下邊列舉詳細的實現代碼:
把geojson給加載進來,采用同步等待的方式;
let promise = Cesium.GeoJsonDataSource.load('data/guizhouroad1.geojson');
在等待事件中,執行將線轉換成立體柱狀;
promise.then(function(dataSource) {
//geojson加載進來的實體
let entities = dataSource.entities.values;
//轉換立體柱狀線
entity.polylineVolume = new Cesium.PolylineVolumeGraphics({
//設置位置
positions: entity.polyline.positions,
//計算立體柱狀坐標
shape: computeCircle(300.0),
//設置顏色或貼圖
material: Cesium.Color.RED
});
//設置平面先為空
entity.polyline = null;
}
//添加數據源并縮放過去
viewer.dataSources.add(dataSource);
viewer.zoomTo(viewer.entities);
console.log(idx);
}).otherwise(function(error) {
window.alert(error);
});
//計算立體柱狀函數
function computeCircle(radius) {
var positions = [];
for(var i = 0; i < 360; i += 2) {
var radians = Cesium.Math.toRadians(i);
positions.push(new Cesium.Cartesian2(radius * Math.cos(radians), radius * Math.sin(radians)));
}
return positions;
}
看完了這篇文章,相信你對“Cesium如何批量加載立體線”有了一定的了解,如果想了解更多相關知識,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!
網站欄目:Cesium如何批量加載立體線
網站URL:http://vcdvsql.cn/article18/gghegp.html
成都網站建設公司_創新互聯,為您提供定制網站、域名注冊、用戶體驗、App開發、品牌網站建設、搜索引擎優化
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯