Skip to content

Commit 7c99294

Browse files
committed
Fix clash of mesh names (fixes IfcOpenShell#661)
1 parent e450101 commit 7c99294

1 file changed

Lines changed: 6 additions & 3 deletions

File tree

src/ifcblender/io_import_scene_ifc/__init__.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,9 @@ def get_collection(cid):
146146
if process_relations:
147147
rel_collection = bpy.data.collections.new("Relations")
148148
collection.children.link(rel_collection)
149+
150+
project_meshes = dict()
151+
149152
while True:
150153
ob = iterator.get()
151154

@@ -159,9 +162,9 @@ def get_collection(cid):
159162
# MESH CREATION
160163
# Depending on version, geometry.id will be either int or str
161164
mesh_name = 'mesh-%r' % ob.geometry.id
162-
if mesh_name in bpy.data.meshes:
163-
me = bpy.data.meshes[mesh_name]
164-
else:
165+
166+
me = project_meshes.get(mesh_name)
167+
if me is None:
165168
verts = [[v[i], v[i + 1], v[i + 2]]
166169
for i in range(0, len(v), 3)]
167170
faces = [[f[i], f[i + 1], f[i + 2]]

0 commit comments

Comments
 (0)