You can now edit parameters of parametric profile definitions in geometry.

This commit is contained in:
Dion Moult
2021-02-17 22:03:41 +11:00
parent 780ea707b0
commit 52691b7ee5
@@ -410,15 +410,14 @@ class GetRepresentationIfcParameters(bpy.types.Operator):
props = obj.data.BIMMeshProperties props = obj.data.BIMMeshProperties
elements = IfcStore.get_file().traverse(IfcStore.get_file().by_id(props.ifc_definition_id)) elements = IfcStore.get_file().traverse(IfcStore.get_file().by_id(props.ifc_definition_id))
for element in elements: for element in elements:
if not element.is_a("IfcRepresentationItem"): if element.is_a("IfcRepresentationItem") or element.is_a("IfcParameterizedProfileDef"):
continue for i in range(0, len(element)):
for i in range(0, len(element)): if element.attribute_type(i) == "DOUBLE":
if element.attribute_type(i) == "DOUBLE": new = props.ifc_parameters.add()
new = props.ifc_parameters.add() new.name = "{}/{}".format(element.is_a(), element.attribute_name(i))
new.name = "{}/{}".format(element.is_a(), element.attribute_name(i)) new.step_id = element.id()
new.step_id = element.id() new.type = element.attribute_type(i)
new.type = element.attribute_type(i) new.index = i
new.index = i if element[i]:
if element[i]: new.value = element[i]
new.value = element[i]
return {"FINISHED"} return {"FINISHED"}