Minor fixes to representation detection

This commit is contained in:
Dion Moult
2019-09-16 17:25:00 +10:00
parent 2d408eb985
commit 611f0e7248
+12 -12
View File
@@ -448,16 +448,15 @@ class IfcParser():
context = self.get_ifc_context(object.data.name) context = self.get_ifc_context(object.data.name)
name = self.get_ifc_representation_name(object.data.name) name = self.get_ifc_representation_name(object.data.name)
for subcontext in self.ifc_export_settings.subcontexts: for subcontext in self.ifc_export_settings.subcontexts:
mesh = bpy.data.meshes['/'.join([context, subcontext, name])] try:
if not mesh: mesh = bpy.data.meshes['/'.join([context, subcontext, name])]
except:
continue continue
results[mesh.name] = self.get_representation( results[mesh.name] = self.get_representation(
mesh, context, subcontext) mesh, context, subcontext)
else: else:
context = 'Model' results['Model/Body/{}'.format(object.data.name)] = self.get_representation(
subcontext = 'Body' object.data, 'Model', 'Body')
results[object.data.name] = self.get_representation(
object.data, context, subcontext)
return results return results
def get_representation(self, mesh, context, subcontext): def get_representation(self, mesh, context, subcontext):
@@ -567,13 +566,14 @@ class IfcParser():
if not object.data: if not object.data:
return names return names
if not self.is_mesh_context_sensitive(object.data.name): if not self.is_mesh_context_sensitive(object.data.name):
return [object.data.name] return ['Model/Body/{}'.format(object.data.name)]
for subcontext in self.ifc_export_settings.subcontexts: for subcontext in self.ifc_export_settings.subcontexts:
mesh = bpy.data.meshes['/'.join([ try:
self.get_ifc_context(object.data.name), mesh = bpy.data.meshes['/'.join([
subcontext, self.get_ifc_context(object.data.name),
self.get_ifc_representation_name(object.data.name)])] subcontext,
if not mesh: self.get_ifc_representation_name(object.data.name)])]
except:
continue continue
names.append(mesh.name) names.append(mesh.name)
return names return names