【解决办法】使用 mvtMap.queryRenderedFeatures API获取鼠标所在位置的实体,即可拿到属性,参考代码如下:
let handlerMove = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
handlerMove.setInputAction(function (movement) {
var position = scene.pickPosition(movement.endPosition);
if (mvtMap && mvtMap.mapboxStyle) {
let positions = [position]
let cartographics = positions.map(pos => Cesium.Cartographic.fromCartesian(pos));
var features = mvtMap.queryRenderedFeatures(cartographics, {
// layers: [layerid]// 可以在这里知道参与查询得图层ID
});
if (features.length > 0) {
features.forEach(feature => {
console.log(feature.id, feature.properties);
});
}
console.log("=====end");
}
}, Cesium.ScreenSpaceEventType.MOUSE_MOVE);