Replaced tool method from 17add48 with existing one

This commit is contained in:
Andrej730
2023-02-28 10:00:05 +05:00
parent 2f614330c9
commit 8cbf719772
6 changed files with 9 additions and 16 deletions
@@ -378,7 +378,7 @@ class SvgWriter:
end_svg = Vector(((x_offset + v1.x), (y_offset - v1.y))) * self.svg_scale
element = tool.Ifc.get_entity(obj)
pset_data = tool.Pset.get_element_pset_data(element, "Pset_BBIM_Batting") or {}
pset_data = ifcopenshell.util.element.get_pset(element, "Pset_BBIM_Batting") or {}
unit_scale = ifcopenshell.util.unit.calculate_unit_scale(tool.Ifc.get())
thickness = pset_data["Thickness"] * unit_scale * self.svg_scale if "Thickness" in pset_data else 15.0
@@ -105,7 +105,7 @@ def update_door_modifier_representation(context):
is_global=True,
should_sync_changes_first=True,
)
# type attributes
element.OperationType = props.door_type
@@ -522,7 +522,7 @@ class CancelEditingDoor(bpy.types.Operator, tool.Ifc.Operator):
def _execute(self, context):
obj = context.active_object
element = tool.Ifc.get_entity(obj)
data = json.loads(tool.Pset.get_element_pset_data(element, "BBIM_Door")["Data"])
data = json.loads(ifcopenshell.util.element.get_pset(element, "BBIM_Door", "Data"))
props = obj.BIMDoorProperties
# restore previous settings since editing was canceled
for prop_name in data:
@@ -579,7 +579,7 @@ class EnableEditingDoor(bpy.types.Operator, tool.Ifc.Operator):
obj = context.active_object
props = obj.BIMDoorProperties
element = tool.Ifc.get_entity(obj)
data = json.loads(tool.Pset.get_element_pset_data(element, "BBIM_Door")["Data"])
data = json.loads(ifcopenshell.util.element.get_pset(element, "BBIM_Door", "Data"))
data.update(data.pop("lining_properties"))
data.update(data.pop("panel_properties"))
@@ -369,7 +369,7 @@ class CancelEditingStair(bpy.types.Operator, tool.Ifc.Operator):
def _execute(self, context):
obj = context.active_object
element = tool.Ifc.get_entity(obj)
data = json.loads(tool.Pset.get_element_pset_data(element, "BBIM_Stair")["Data"])
data = json.loads(ifcopenshell.util.element.get_pset(element, "BBIM_Stair", "Data"))
props = obj.BIMStairProperties
# restore previous settings since editing was canceled
for prop_name in data:
@@ -414,7 +414,7 @@ class EnableEditingStair(bpy.types.Operator, tool.Ifc.Operator):
obj = context.active_object
props = obj.BIMStairProperties
element = tool.Ifc.get_entity(obj)
data = json.loads(tool.Pset.get_element_pset_data(element, "BBIM_Stair")["Data"])
data = json.loads(ifcopenshell.util.element.get_pset(element, "BBIM_Stair", "Data"))
# required since we could load pset from .ifc and BIMStairProperties won't be set
for prop_name in data:
setattr(props, prop_name, data[prop_name])
@@ -487,7 +487,7 @@ class CancelEditingWindow(bpy.types.Operator, tool.Ifc.Operator):
def _execute(self, context):
obj = context.active_object
element = tool.Ifc.get_entity(obj)
data = json.loads(tool.Pset.get_element_pset_data(element, "BBIM_Window")["Data"])
data = json.loads(ifcopenshell.util.element.get_pset(element, "BBIM_Window", "Data"))
props = obj.BIMWindowProperties
for prop_name in data:
setattr(props, prop_name, data[prop_name])
@@ -543,7 +543,7 @@ class EnableEditingWindow(bpy.types.Operator, tool.Ifc.Operator):
obj = context.active_object
props = obj.BIMWindowProperties
element = tool.Ifc.get_entity(obj)
data = json.loads(tool.Pset.get_element_pset_data(element, "BBIM_Window")["Data"])
data = json.loads(ifcopenshell.util.element.get_pset(element, "BBIM_Window", "Data"))
data.update(data.pop("lining_properties"))
data.update(data.pop("panel_properties"))
-1
View File
@@ -486,7 +486,6 @@ class Profile:
@interface
class Pset:
def get_element_pset(cls, element, pset_name): pass
def get_element_pset_data(cls, element, pset_name): pass
@interface
+1 -7
View File
@@ -25,12 +25,6 @@ import blenderbim.tool as tool
class Pset(blenderbim.core.tool.Pset):
@classmethod
def get_element_pset(cls, element, pset_name):
psets = ifcopenshell.util.element.get_psets(element)
pset = psets.get(pset_name, None)
pset = ifcopenshell.util.element.get_pset(element, pset_name)
if pset:
return tool.Ifc.get().by_id(pset["id"])
@classmethod
def get_element_pset_data(cls, element, pset_name):
psets = ifcopenshell.util.element.get_psets(element)
return psets.get(pset_name, None)