onHover 在 deck.gl 中无法使用场景图

onHover not working with scenegraph in deck.gl

我的代码-图层

new ScenegraphLayer({
  id:"22",
  scenegraph: "glb/22.glb",
  data: dataArray.glb22,
  getPosition: d => [d.geometry.coordinates[0],
                     d.geometry.coordinates[1], 0] ,
  sizeMinPixels: 1,
  sizeMaxPixels: 10,
  getOrientation: [0, 180, 90],
  getTranslation: [0, 0, 0],
  sizeUnits: 'meters',
  onHover: this._onHover
});

onHover 代码为

_onHover({x, y, object}) {
  console.log("TTTTTTTTTTTTTTTTT");
}

但没有用。此代码在 geojsonLayer 中工作。

如何修复我的代码?我希望 onHover 在场景图形层中工作。 谢谢。

我想你只是忘了添加可拾取的能力。 onHover 要求可选取属性为真。您可以阅读更多相关信息 here

Here there is an online example of ScenegraphLayer from official documentantion and here you can see the source code. Pay attention to row 116:

const layer =
    data &&
    new ScenegraphLayer({
      id: 'scenegraph-layer',
      data,
      pickable: true,
      ...
    });