diff --git a/src/Mod/BIM/importers/exportIFC.py b/src/Mod/BIM/importers/exportIFC.py index 74208443f6..a12fbda457 100644 --- a/src/Mod/BIM/importers/exportIFC.py +++ b/src/Mod/BIM/importers/exportIFC.py @@ -2346,6 +2346,7 @@ def getRepresentation( if hasattr(obj,"Material"): if obj.Material: m = obj.Material.Label + rgbt[i] = (rgbt[i][0], rgbt[i][1], rgbt[i][2], obj.Material.Transparency/100.0) psa = ifcbin.createIfcPresentationStyleAssignment(m,rgbt[i][0],rgbt[i][1],rgbt[i][2],rgbt[i][3]) surfstyles[key] = psa isi = ifcfile.createIfcStyledItem(shape,[psa],None) diff --git a/src/Mod/BIM/importers/exportIFCHelper.py b/src/Mod/BIM/importers/exportIFCHelper.py index d4e6feb2b3..d044269850 100644 --- a/src/Mod/BIM/importers/exportIFCHelper.py +++ b/src/Mod/BIM/importers/exportIFCHelper.py @@ -381,13 +381,13 @@ class recycler: self.rgbs[key] = c return c - def createIfcSurfaceStyleRendering(self,col,trans=0): + def createIfcSurfaceStyleRendering(self,col,trans=1): key = (col.Red,col.Green,col.Blue,trans) if self.compress and key in self.ssrenderings: self.spared += 1 return self.ssrenderings[key] else: - if trans == 0: + if trans == 1: trans = None c = self.ifcfile.createIfcSurfaceStyleRendering(col,trans,None,None,None,None,None,None,"FLAT") if self.compress: @@ -405,7 +405,7 @@ class recycler: self.transformationoperators[key] = c return c - def createIfcSurfaceStyle(self,name,r,g,b,t=0): + def createIfcSurfaceStyle(self,name,r,g,b,a=1): if name: key = name + str((r,g,b)) else: @@ -415,22 +415,22 @@ class recycler: return self.sstyles[key] else: col = self.createIfcColourRgb(r,g,b) - ssr = self.createIfcSurfaceStyleRendering(col,t) + ssr = self.createIfcSurfaceStyleRendering(col,a) c = self.ifcfile.createIfcSurfaceStyle(name,"BOTH",[ssr]) if self.compress: self.sstyles[key] = c return c - def createIfcPresentationStyleAssignment(self,name,r,g,b,t=0,ifc4=False): + def createIfcPresentationStyleAssignment(self,name,r,g,b,a=1,ifc4=False): if name: - key = name+str((r,g,b,t)) + key = name+str((r,g,b,a)) else: - key = str((r,g,b,t)) + key = str((r,g,b,a)) if self.compress and key in self.psas: self.spared += 1 return self.psas[key] else: - iss = self.createIfcSurfaceStyle(name,r,g,b,t) + iss = self.createIfcSurfaceStyle(name,r,g,b,a) if ifc4: c = iss else: