From 52691b7ee5d7270f2f67a7a40c453cf90e315eaf Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Wed, 17 Feb 2021 22:03:41 +1100 Subject: [PATCH] You can now edit parameters of parametric profile definitions in geometry. --- .../bim/module/geometry/operator.py | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/ifcblenderexport/blenderbim/bim/module/geometry/operator.py b/src/ifcblenderexport/blenderbim/bim/module/geometry/operator.py index ea51aeffc4..99275351e6 100644 --- a/src/ifcblenderexport/blenderbim/bim/module/geometry/operator.py +++ b/src/ifcblenderexport/blenderbim/bim/module/geometry/operator.py @@ -410,15 +410,14 @@ class GetRepresentationIfcParameters(bpy.types.Operator): props = obj.data.BIMMeshProperties elements = IfcStore.get_file().traverse(IfcStore.get_file().by_id(props.ifc_definition_id)) for element in elements: - if not element.is_a("IfcRepresentationItem"): - continue - for i in range(0, len(element)): - if element.attribute_type(i) == "DOUBLE": - new = props.ifc_parameters.add() - new.name = "{}/{}".format(element.is_a(), element.attribute_name(i)) - new.step_id = element.id() - new.type = element.attribute_type(i) - new.index = i - if element[i]: - new.value = element[i] + if element.is_a("IfcRepresentationItem") or element.is_a("IfcParameterizedProfileDef"): + for i in range(0, len(element)): + if element.attribute_type(i) == "DOUBLE": + new = props.ifc_parameters.add() + new.name = "{}/{}".format(element.is_a(), element.attribute_name(i)) + new.step_id = element.id() + new.type = element.attribute_type(i) + new.index = i + if element[i]: + new.value = element[i] return {"FINISHED"}