Во-первых, спасибо за ваши ответы, к сожалению, прозрачность все еще там.
Алекс: Я убрал непрозрачность.
Брайан: Я исправил код в соответствии с вашими предложениями (как я их понял).Ниже обновленный код.
Как видно из рисунка в ссылке, прозрачность еще есть.Любые другие предложения будут с благодарностью.
setColorMaterial(material, viewer) {
var mesh_material = this.addMaterial(material, viewer)
for (var i=0; i< material.dbIds.length; i++) {
var dbid = material.dbIds[i]
//from dbid to node, to fragid
var it = viewer.model.getData().instanceTree
it.enumNodeFragments(dbid, function (fragId) {
var renderProxy = viewer.impl.getRenderProxy(viewer.model, fragId)
renderProxy.meshProxy = new THREE.Mesh(renderProxy.geometry, mesh_material)
renderProxy.meshProxy.matrix.copy(renderProxy.matrixWorld)
renderProxy.meshProxy.matrixWorldNeedsUpdate = true
renderProxy.meshProxy.matrixAutoUpdate = false
renderProxy.meshProxy.frustumCulled = false
viewer.impl.addOverlay(material.name, renderProxy.meshProxy)
}, false)
}
viewer.impl.invalidate(true)
}
addMaterial(material, viewer) {
var mesh_material = new THREE.MeshPhongMaterial({
color: material.color,
transparent: false,
blendEquationAlpha: false,
name: material.name
})
viewer.impl.matman().addMaterial(this.newGuid(), mesh_material)
viewer.impl.createOverlayScene(material.name, mesh_material)
return mesh_material
}
Прозрачность все еще там изображение