Fix #6404. See #1227. Fix IFC2X3 wall creation with new wall engine.

This commit is contained in:
Dion Moult
2025-03-21 16:30:56 +11:00
parent 9c4ec34de3
commit 8e1e0aec79
2 changed files with 2 additions and 2 deletions
@@ -548,7 +548,7 @@ class Regenerator:
material = ifcopenshell.util.element.get_material(wall, should_skip_usage=True)
if not material or not material.is_a("IfcMaterialLayerSet"):
return []
return [PrioritisedLayer(l.Priority or 0, l.LayerThickness) for l in material.MaterialLayers]
return [PrioritisedLayer(getattr(l, "Priority", 0) or 0, l.LayerThickness) for l in material.MaterialLayers]
def combine_layers(self, layers, override_priorities):
results = []
@@ -480,7 +480,7 @@ def get_reference_line(wall: ifcopenshell.entity_instance, fallback_length: floa
if axis := ifcopenshell.util.representation.get_representation(wall, "Plan", "Axis", "GRAPH_VIEW"):
for item in ifcopenshell.util.representation.resolve_representation(axis).Items:
if item.is_a("IfcPolyline"):
points = item.Points
points = [p[0] for p in item.Points]
elif item.is_a("IfcIndexedPolyCurve"):
points = item.Points.CoordList
else: