Forge Viewer:需要像在隔离视图中一样隐藏所有元素

Forge Viewer: Need to hide all the elements like in isolated view

使用 isolate() 方法我可以隔离几个元素并隐藏其他所有元素,如下所示: viewer.isolate([65, 80, 83, 92]);

但是有没有可能像孤立视图的隐藏元素一样隐藏所有元素呢?

我试过viewer.isolate([]);

但那样会显示所有元素。

我需要的是能够隐藏所有元素并仅显示半透明视图,就像在孤立状态下一样。

有办法吗?

谢谢

对于 dbId 列表,您可以调用以下命令(对于每个 dbId):

var n = viewer.model.getData().instanceTree.nodeAccess.nodes[dbId];
viewer.impl.visibilityManager.setNodeOff(n, true);

要再次显示,只需将 setNodeOff true 替换为 false

另一种解决方案可能如下...

var instanceTree = viewer.model.getData().instanceTree
var rootId = instanceTree.getRootId()
viewer.hide(rootId) // hidding root node will hide whole model ...

找到了一个简单的重影全局设置:Viewer3d.setGhosting(bool)

var viewer = NOP_VIEWER;
viewer.setGhosting(false);

这将完全关闭非隔离元素的可见性