diff --git a/src/ifcsverchok/nodes/ifc/by_type.py b/src/ifcsverchok/nodes/ifc/by_type.py index bb1095883a..427a11a91a 100644 --- a/src/ifcsverchok/nodes/ifc/by_type.py +++ b/src/ifcsverchok/nodes/ifc/by_type.py @@ -4,8 +4,7 @@ import ifcsverchok.helper from bpy.props import StringProperty, EnumProperty from sverchok.node_tree import SverchCustomTreeNode from sverchok.data_structure import updateNode -from blenderbim.bim import schema -from blenderbim.bim.prop import getIfcClasses, getIfcProducts, refreshClasses, refreshPredefinedTypes +from blenderbim.bim.module.root.prop import getIfcClasses, getIfcProducts, refreshClasses, refreshPredefinedTypes class SvIfcByType(bpy.types.Node, SverchCustomTreeNode, ifcsverchok.helper.SvIfcCore): diff --git a/src/ifcsverchok/nodes/ifc/select_blender_objects.py b/src/ifcsverchok/nodes/ifc/select_blender_objects.py index 8808b8d3b9..9f9f15cad5 100644 --- a/src/ifcsverchok/nodes/ifc/select_blender_objects.py +++ b/src/ifcsverchok/nodes/ifc/select_blender_objects.py @@ -5,6 +5,7 @@ import ifcsverchok.helper from bpy.props import StringProperty from sverchok.node_tree import SverchCustomTreeNode from sverchok.data_structure import updateNode +from blenderbim.bim.ifc import IfcStore class SvIfcSelectBlenderObjectsRefresh(bpy.types.Operator): @@ -36,12 +37,14 @@ class SvIfcSelectBlenderObjects(bpy.types.Node, SverchCustomTreeNode, ifcsvercho ) def process(self): + self.file = IfcStore.get_file() self.sv_input_names = ["entities"] self.guids = [] super().process() for obj in bpy.context.visible_objects: - index = obj.BIMObjectProperties.attributes.find("GlobalId") - if index != -1 and obj.BIMObjectProperties.attributes[index].string_value in self.guids: + if not obj.BIMObjectProperties.ifc_definition_id: + continue + if self.file.by_id(obj.BIMObjectProperties.ifc_definition_id).GlobalId in self.guids: obj.select_set(True) def process_ifc(self, entities):