mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-11 10:06:47 +00:00
Replaced tool method from 17add48 with existing one
This commit is contained in:
@@ -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"))
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user