項目中需要基于cesium接入mvt格式的服務并支持屬性拾取查詢,通過一系列預研測試,最后選擇cesium-mvt-imagery-provider開源插件完成,關鍵源碼信息如下:
npm i cesium cesium-mvt-imagery-provider //安裝依賴包// 加載圖層import CesiumMVTImageryProvider from "cesium-mvt-imagery-provider";const imageryProvider = new CesiumMVTImageryProvider({urlTemplate: "http://localhost:8080/testmvt/{z}/{x}/{y}.mvt",layerName: "layerName", // 圖層名 必傳style: feature => { // 圖層樣式 必傳可根據條件分別設置樣式return {strokeStyle: "green",fillStyle: "green",lineWidth: 1,};},onSelectFeature: feature => { // 屬性拾取事件console.log("Feature is selected");},credit: "cesium.js",
});
viewer.scene.imageryLayers.addImageryProvider(imageryProvider);
//const currentLayer = viewer.scene.imageryLayers.addImageryProvider(imageryProvider);
//currentLayer.alpha = 0.5;