Autodesk Forge Viewer:添加自定义模型后选择事件不再起作用
Autodesk Forge Viewer: Selection-event not working anymore after adding a custom model
我正在研究 Petr Broz 的 Custom models in Forge Viewer 博客条目中的示例。
我现在面临的问题是,在调用 sceneBuilder.addNewModel
方法后,Autodesk.Viewing.SELECTION_CHANGED_EVENT
事件不再引发。
为了测试这个问题,我修改了 Codepen-example:
添加新功能:
function onSelection(event) {
event.dbIdArray.forEach(selection => {
console.log(`selected ${selection}`)
});
}
...并将函数注册为事件侦听器(作为设置的第一步):
[...]
forgist.setup(document.getElementById('viewer'), 2).then(viewer => {
viewer.addEventListener(Autodesk.Viewing.SELECTION_CHANGED_EVENT, onSelection)
[...]
只要我不点击 "Add geometry" 按钮,选择就会显示在控制台中,但之后不会打印任何内容。
编辑:viewer.getSelection()
方法仍然 returns 所选对象的正确 ID
如果要创建多模型环境,您将不得不使用
AGGREGATE_SELECTION_CHANGED_EVENT 收到有关选择的通知
我正在研究 Petr Broz 的 Custom models in Forge Viewer 博客条目中的示例。
我现在面临的问题是,在调用 sceneBuilder.addNewModel
方法后,Autodesk.Viewing.SELECTION_CHANGED_EVENT
事件不再引发。
为了测试这个问题,我修改了 Codepen-example:
添加新功能:
function onSelection(event) {
event.dbIdArray.forEach(selection => {
console.log(`selected ${selection}`)
});
}
...并将函数注册为事件侦听器(作为设置的第一步):
[...]
forgist.setup(document.getElementById('viewer'), 2).then(viewer => {
viewer.addEventListener(Autodesk.Viewing.SELECTION_CHANGED_EVENT, onSelection)
[...]
只要我不点击 "Add geometry" 按钮,选择就会显示在控制台中,但之后不会打印任何内容。
编辑:viewer.getSelection()
方法仍然 returns 所选对象的正确 ID
如果要创建多模型环境,您将不得不使用 AGGREGATE_SELECTION_CHANGED_EVENT 收到有关选择的通知