如何在Autodesk-Viewer中设置元素的透明度?

时间:2019-03-21 06:56:02

标签: autodesk-viewer

我正在尝试设置模型元素的透明度,但是我不能这样做。我正在寻找可以做到这一点的方法,但是我尝试的方法不起作用。

1 个答案:

答案 0 :(得分:1)

Viewer并没有真正提供任何本机/内置的功能,但是就图形操作而言,THREE.js始终是您的朋友,只要您可以在其中引用目标元素的材质(通过其dbid / nodeid)即可。查看者:

var fragList = viewer.model.getFragmentList();    

var fragIds = []

model.getData().instanceTree.enumNodeFragments(
  dbid, (fragId) => {
   fragIds.push(fragId)
});

    fragIds.forEach((fragId) => {
      //grab the material
      var material = fragList.getMaterial(fragId);

      if(material) {
        //set transparency
        material.opacity = 0.5;
        material.transparent = true;
        //mark for update
        material.needsUpdate = true
      }
    })
  });
  viewer.impl.invalidate(true, true, true) //notify renderer to update
}