Forge Viewer:需要隐藏所有元素,例如在隔离视图中

时间:2016-12-12 10:26:53

标签: autodesk autodesk-forge autodesk-viewer

使用isolate()方法我可以隔离几个元素并隐藏其他所有内容: viewer.isolate([65, 80, 83, 92]); enter image description here

但是可以隐藏所有元素,例如孤立视图的隐藏元素吗?

我尝试过viewer.isolate([]);

但这会显示所有元素。

我需要的是能够隐藏所有元素并仅显示处于隔离状态的半透明视图。

有办法做到这一点吗?

由于

3 个答案:

答案 0 :(得分:2)

对于dbIds列表,您可以调用以下内容(对于每个dbId):

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

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

答案 1 :(得分:2)

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

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

答案 2 :(得分:0)

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

NodeJS

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