如何初始化空查看器

How to initialize empty viewer

我试过在没有模型的情况下启动查看器:

var viewer = new Autodesk.Viewing.Private.GuiViewer3D(viewerElement);

const forgeOptions = {
    env: 'AutodeskProduction',
    accessToken: scope.token
};

Autodesk.Viewing.Initializer(forgeOptions, () => {
    viewer.start();
});

在那之后,我得到了中间有加载器的查看器(没有面板)。

如果我在 start() 方法中设置模型 urn,则加载所有面板。我可以删除此模型,然后我会得到带有面板和栏的空查看器。

如何在不欺骗模型 load/unload 的情况下获得空加载的查看器?

遗憾的是,目前 GuiViewer3D 的 UI 是在模型加载后创建的。而且查看器不支持空模型模式,所以你可能至少要加载一个模型。

但是,有一种解决方法可以将其存档。您可以加载一个虚拟模型,其中包含两个非常非常小的点,例如边界框的最大点和最小点,以使其看起来像没有加载模型。在加载新模型之前,你必须先卸载这个虚拟模型,然后调用Viewer3D.tearDwon()释放一些内存。

P.S。这只是一个解决方法,不是正式的解决方案,您可能需要自行承担使用它的风险。