如何初始化空查看器
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。这只是一个解决方法,不是正式的解决方案,您可能需要自行承担使用它的风险。
我试过在没有模型的情况下启动查看器:
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。这只是一个解决方法,不是正式的解决方案,您可能需要自行承担使用它的风险。