Files
IfcOpenShell/src/ifcopenshell-python/ifcopenshell/api/cost/add_cost_value.py
T

19 lines
736 B
Python

class Usecase:
def __init__(self, file, **settings):
self.file = file
self.settings = {"parent": None}
for key, value in settings.items():
self.settings[key] = value
def execute(self):
value = self.file.create_entity("IfcCostValue")
if self.settings["parent"].is_a("IfcCostItem"):
values = list(self.settings["parent"].CostValues or [])
values.append(value)
self.settings["parent"].CostValues = values
elif self.settings["parent"].is_a("IfcCostValue"):
values = list(self.settings["parent"].Components or [])
values.append(value)
self.settings["parent"].Components = values
return value