Fix segment object parenting and add Claude Code to .gitignore

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
DesertSpringsCivil
2026-02-24 13:54:38 -07:00
parent be30f9cbea
commit e1bf717af5
2 changed files with 16 additions and 1 deletions
+5
View File
@@ -115,3 +115,8 @@ dev_environment.bat
src/ifcopenshell-python/ifcopenshell/express/*.exp
src/ifcopenshell-python/ifcopenshell/express/*.exp.cache.dat
# Claude Code
.claude/
.mcp.json
CLAUDE.md
+11 -1
View File
@@ -571,6 +571,7 @@ class Alignment:
mapped_segments = ifcopenshell.api.alignment.get_mapped_segments(segment)
tool.Loader.load_settings()
obj = None
for curve_segment in mapped_segments:
if curve_segment is not None:
geometry = tool.Loader.create_generic_shape(curve_segment)
@@ -578,7 +579,16 @@ class Alignment:
mesh = ifc_importer.create_mesh(curve_segment, geometry)
obj = bpy.data.objects.new(tool.Loader.get_name(curve_segment), mesh)
tool.Ifc.link(curve_segment, obj)
tool.Collector.assign(obj)
# Parent to layout object for proper hierarchy
if parent_obj:
obj.parent = parent_obj
# Assign to same collection as parent (avoid "Unsorted")
if parent_obj and parent_obj.users_collection:
parent_obj.users_collection[0].objects.link(obj)
else:
tool.Collector.assign(obj)
return obj
@classmethod