【问题标题】:Autodesk Forge Viewer - How do I fire an event after model loading is complete?Autodesk Forge Viewer - 如何在模型加载完成后触发事件?
【发布时间】:2020-09-12 21:05:12
【问题描述】:

模型加载完成后如何触发事件?

我在下面创建了“basicSetting”函数。

function basicSetting(){
    viewer.setLightPreset(1);
    viewer.setQualityLevel(false, false);
    viewer.setGhosting(true);
    viewer.setGroundShadow(false);
    viewer.setGroundReflection(false);
    viewer.setEnvMapBackground(false);
    viewer.setProgressiveRendering(true);
}   

我将它应用于“onDocumentLoadSuccess”函数。

但是没有用。

救命!

【问题讨论】:

    标签: autodesk-forge autodesk-viewer


    【解决方案1】:

    您可以按照this 链接使用GEOMETRY_LOADED_EVENT,并在初始化查看器后像这样使用它。

    在打字稿中(使用伪造打字)

    this.viewer.addEventListener(Autodesk.Viewing.GEOMETRY_LOADED_EVENT, (x) => 
    { 
        basicSetting();
    }
    

    或者,如果您想额外保存并确保该函数永远不会在其他地方调用,只需将其删除并将其内容放在事件回调中。

    this.viewer.addEventListener(Autodesk.Viewing.GEOMETRY_LOADED_EVENT, (x) => 
    { 
        this.viewer.setLightPreset(1);
        this.viewer.setQualityLevel(false, false);
        this.viewer.setGhosting(true);
        this.viewer.setGroundShadow(false);
        this.viewer.setGroundReflection(false);
        this.viewer.setEnvMapBackground(false);
        this.viewer.setProgressiveRendering(true);
    }
    

    不确定您正在开发哪种语言,但应该很相似!

    【讨论】:

    • 您的回答对我很有帮助!而且,正如您所说,我删除了该功能。非常感谢!
    • 是的,Autodesk.Viewing.GEOMETRY_LOADED_EVENT 是一个不错的选择 - 在 all 几何体加载后触发该事件。如果您想更早地运行配置逻辑,您还可以考虑Autodesk.Viewing.MODEL_ROOT_LOADED_EVENT - 当查看器加载初始模型清单(在加载其几何之前)时触发此事件。
    • @PetrBroz "Autodesk.Viewing.MODEL_ROOT_LOADED_EVENT" 这对我来说更好。非常感谢!
    【解决方案2】:

    您可以使用等待查看器加载完成的承诺,例如:

    var loadedPromise = new Promise((resolve, reject) => {
    var listener = function (event) {
        baseViewer.removeEventListener(
            Autodesk.Viewing.GEOMETRY_LOADED_EVENT, 
                listener
            );
            resolve();
    }
    baseViewer.addEventListener(
        Autodesk.Viewing.GEOMETRY_LOADED_EVENT,
        listener
    );
    

    }); 等待已加载的承诺;

    【讨论】:

      猜你喜欢
      • 2020-01-06
      • 2020-11-24
      • 2022-01-02
      • 2021-02-10
      • 2020-09-30
      • 2021-10-02
      • 2018-12-11
      • 2019-06-05
      • 2020-05-15
      相关资源
      最近更新 更多