Autodesk forge 模型聚合:loadDocumentNode之后扩展(选择)不起作用

Autodesk forge 模型聚合:loadDocumentNode之后扩展(选择)不起作用,autodesk-forge,autodesk-viewer,Autodesk Forge,Autodesk Viewer,我使用下面的代码,使用Viewer3D.loadDocumentNode API v7加载一个附加模型,效果非常好。然而,我有两个问题: Autodesk.Viewing.Document.load(`urn:${myURN}`, (doc) => { var viewables = doc.getRoot().getDefaultGeometry(); viewer.loadDocumentNode(doc, viewabl

我使用下面的代码,使用Viewer3D.loadDocumentNode API v7加载一个附加模型,效果非常好。然而,我有两个问题:

Autodesk.Viewing.Document.load(`urn:${myURN}`, (doc) => {
                var viewables = doc.getRoot().getDefaultGeometry();
                viewer.loadDocumentNode(doc, viewables,{
                    placementTransform: (new THREE.Matrix4()).setPosition({x:0,y:0,z:0}),
                    keepCurrentModels: true,
                    globalOffset: {x:0,y:0,z:0}

                })
                .then( onLoadFinished );
            });
第一个问题:在加载聚合模型后,不再触发等待SELECTION_CHANGED_事件的我的扩展

load() {
    this.onSelectionBinded = this.onSelectionEvent.bind(this);
    this.viewer.addEventListener(Autodesk.Viewing.SELECTION_CHANGED_EVENT, this.onSelectionBinded);
    console.log('ReactToEvents has been loaded');
    return true;
}
例如

第二个问题:另一个解析选定元素的扩展不考虑聚合模型中的选定元素选择数=0

onToolbarCreated() {
    // Create a new toolbar group if it doesn't exist
    this._group = this.viewer.toolbar.getControl('allMyAwesomeExtensionsToolbar');
    if (!this._group) {
        this._group = new Autodesk.Viewing.UI.ControlGroup('allMyAwesomeExtensionsToolbar');
        this.viewer.toolbar.addControl(this._group);
    }

    // Add a new button to the toolbar group
    this._button = new Autodesk.Viewing.UI.Button('handleSelectionExtensionButton');
    this._button.onClick = (ev) => {
        // Get current selection
        const selection = this.viewer.getSelection();
        this.viewer.clearSelection();
        // Anything selected?
        console.log("Clicked handleSelectionExtensionButton: ", selection.length);
        if (selection.length > 0) { ... }
    }
}
出于某种原因,this.viewer.getSelection;忽略来自loadDocumentNode的内容

我尝试卸载/重新加载扩展,但仍然无法工作


非常感谢任何帮助

稍后添加了对加载多个模型的支持,为了防止破坏向后兼容性,开发人员添加了新的API和事件名称,这些API和名称应在多模型场景中使用。查找包含聚合词的方法和事件,例如Autodesk.Viewing.aggregate\u SELECTION\u CHANGED\u事件或Autodesk.Viewing.aggregate\u FIT\u TO\u VIEW\u事件。

这两个问题都是使用getAggregateSelection和aggregate\u SELECTION\u CHANGED\u事件解决的。非常感谢。很高兴我能帮忙。干杯