在 Autodesk Forge 的另一个扩展中打开一个扩展的可能性
Possibility of opening an extension within another extension in Autodesk Forge
是否可以通过另一个自定义扩展打开一个自定义扩展?
我试过了,但我在“Autodesk.Viewing.UI.DockingPanel.call”时遇到问题,不确定我是否正确完成或根本不可能。
我的用例:
我需要创建一份报告,其中包含一些需要在运行时输入的额外数据以及当前视图的屏幕截图。(为此我有一个扩展)。
以上扩展需要通过标记扩展打开,以便我可以添加注释并保存屏幕截图。
干杯
编辑
是否也可以向核心扩展添加自定义扩展?
viewer.loadExtension("Autodesk.Viewing.MarkupsGui").then(function (extension_)
{
viewer.loadExtension('CreateNcrExtension');
});
这实际上行不通。没有错误,但也不会加载
从另一个扩展加载扩展很常见,通常在您的扩展的 load
方法中完成。 load
和 unload
方法可以是异步的,所以你可以这样做:
class MyAwesomeExtension extends Autodesk.Viewing.Extension {
// ...
async load() {
await this.viewer.loadExtension('Autodesk.Viewing.MarkupsCore');
return true;
}
// ...
}
是否可以通过另一个自定义扩展打开一个自定义扩展?
我试过了,但我在“Autodesk.Viewing.UI.DockingPanel.call”时遇到问题,不确定我是否正确完成或根本不可能。
我的用例:
我需要创建一份报告,其中包含一些需要在运行时输入的额外数据以及当前视图的屏幕截图。(为此我有一个扩展)。
以上扩展需要通过标记扩展打开,以便我可以添加注释并保存屏幕截图。 干杯
编辑
是否也可以向核心扩展添加自定义扩展?
viewer.loadExtension("Autodesk.Viewing.MarkupsGui").then(function (extension_)
{
viewer.loadExtension('CreateNcrExtension');
});
这实际上行不通。没有错误,但也不会加载
从另一个扩展加载扩展很常见,通常在您的扩展的 load
方法中完成。 load
和 unload
方法可以是异步的,所以你可以这样做:
class MyAwesomeExtension extends Autodesk.Viewing.Extension {
// ...
async load() {
await this.viewer.loadExtension('Autodesk.Viewing.MarkupsCore');
return true;
}
// ...
}