如何在 Forge Viewer 中更改对象名称?
How to change object names in Forge Viewer?
如何在 Forge Viewer 中更改对象和父节点的名称?
在 6.1 及以下版本中,有一个博客 post 有效:通过更改 ModelStructureTreeDelegate class,将其作为扩展重新加载,有效地覆盖它。这在 6.2 及更高版本(当前为 6.3.3)上不起作用,因为现在 class 不再可访问,否则不起作用。
我发现,通过访问 InstanceTreeStorage.prototype.processName 方法,我可以更改树中对象的名称,但是 class 在外部不可用。它似乎只在模型加载期间使用。
我发现没有其他 class 可以更改名称,也没有任何其他功能可以让我这样做。
有没有人用最新版本的查看器做过类似的事情?
您可以创建自己的模型结构面板,方法是从 Autodesk.Viewing.Extensions.ViewerModelStructurePanel
class 派生,覆盖 getNodeLabel
方法,并将 class 的实例设置为查看器的模型结构 UI:
class CustomModelStructurePanel extends Autodesk.Viewing.Extensions.ViewerModelStructurePanel {
constructor(viewer, title, options) {
super(viewer, title, options);
}
getNodeLabel(node) {
return 'custom node name';
}
}
viewer.setModelStructurePanel(new CustomModelStructurePanel(viewer, 'Custom Model Structure', options));
如何在 Forge Viewer 中更改对象和父节点的名称?
在 6.1 及以下版本中,有一个博客 post 有效:通过更改 ModelStructureTreeDelegate class,将其作为扩展重新加载,有效地覆盖它。这在 6.2 及更高版本(当前为 6.3.3)上不起作用,因为现在 class 不再可访问,否则不起作用。
我发现,通过访问 InstanceTreeStorage.prototype.processName 方法,我可以更改树中对象的名称,但是 class 在外部不可用。它似乎只在模型加载期间使用。
我发现没有其他 class 可以更改名称,也没有任何其他功能可以让我这样做。
有没有人用最新版本的查看器做过类似的事情?
您可以创建自己的模型结构面板,方法是从 Autodesk.Viewing.Extensions.ViewerModelStructurePanel
class 派生,覆盖 getNodeLabel
方法,并将 class 的实例设置为查看器的模型结构 UI:
class CustomModelStructurePanel extends Autodesk.Viewing.Extensions.ViewerModelStructurePanel {
constructor(viewer, title, options) {
super(viewer, title, options);
}
getNodeLabel(node) {
return 'custom node name';
}
}
viewer.setModelStructurePanel(new CustomModelStructurePanel(viewer, 'Custom Model Structure', options));