Forge Viewer - 如何访问(或获取 render/fragment 代理)场景中的克隆网格?
Forge Viewer - How to access (or get render/fragment proxy of) cloned Meshes in scene?
我在将克隆对象添加到场景时遇到 Forge Viewer 问题,我可以看到它,但 select 它或对其进行任何更改都看不到。
我有这个伪代码。
// get first selected Mesh
let selected = Object.values(viewer.impl.selectionMeshes)[0];
// clone it
let clone = selected.clone();
// add it to scene
viewer.impl.scene.add(clone);
// update scene
viewer.impl.sceneUpdated(true);
我错过了什么吗?或者我是否需要将克隆对象作为模型的一部分?
您可以通过多种方式将自定义网格添加到 Forge Viewer,例如:
- 像您一样,将 three.js 网格插入
viewer.impl.scene
或 viewer.impl.sceneAfter
- 使用 overlay manager
- 使用新的 scene builder 扩展程序
请注意,前两种方法通常仅用于“叠加”,这意味着网格的行为(与查看器交互)与实际加载的模型不同。然而,使用场景生成器可以悬停、选择自定义网格等。
我在将克隆对象添加到场景时遇到 Forge Viewer 问题,我可以看到它,但 select 它或对其进行任何更改都看不到。
我有这个伪代码。
// get first selected Mesh
let selected = Object.values(viewer.impl.selectionMeshes)[0];
// clone it
let clone = selected.clone();
// add it to scene
viewer.impl.scene.add(clone);
// update scene
viewer.impl.sceneUpdated(true);
我错过了什么吗?或者我是否需要将克隆对象作为模型的一部分?
您可以通过多种方式将自定义网格添加到 Forge Viewer,例如:
- 像您一样,将 three.js 网格插入
viewer.impl.scene
或viewer.impl.sceneAfter
- 使用 overlay manager
- 使用新的 scene builder 扩展程序
请注意,前两种方法通常仅用于“叠加”,这意味着网格的行为(与查看器交互)与实际加载的模型不同。然而,使用场景生成器可以悬停、选择自定义网格等。