Merge branch 'v0.7.0' into v0.7.0

This commit is contained in:
Vukas Pajic
2022-07-21 08:37:44 +02:00
committed by GitHub
4 changed files with 28 additions and 5 deletions
@@ -470,7 +470,6 @@ class ActivateIfcBuildingStoreyFilter(Operator):
row.operator("bim.toggle_filter_selection", text="Select All").action = "SELECT"
row.operator("bim.toggle_filter_selection", text="Deselect All").action = "DESELECT"
class UnhideAllElements(Operator):
"""Filter model elements based on selection"""
@@ -669,9 +668,8 @@ class AddToIfcGroup(Operator):
group = ifcopenshell.api.run("group.add_group", self.file, **{"Name": self.group_name})
objects = Selector.parse(self.file, selector_query_syntax)
for obj in objects:
ifcopenshell.api.run("group.assign_group", self.file, **{"product": obj, "group": group})
ifcopenshell.api.run("group.assign_group", self.file, **{"product": objects, "group": group})
Data.load(IfcStore.get_file())
return {"FINISHED"}
@@ -0,0 +1,16 @@
@root
Feature: Search
Scenario: Select all walls
Given an empty IFC project
And I add a cube
When the object "Cube" is selected
And I set "scene.BIMRootProperties.ifc_class" to "IfcWall"
And I press "bim.assign_class"
And I add a new group to IfcSelector
And I add a new query to IfcSelector
And I set "scene.IfcSelectorProperties.groups[0].queries[0].active_option" to "IFC Class"
And I set "scene.IfcSelectorProperties.groups[0].queries[0].active_option" to "124: IfcWall"
And I press 'bim.filter_model_elements'
Then bpy.context.selected_objects should contain "Cube"
+9
View File
@@ -98,6 +98,15 @@ def i_add_a_sun():
def i_add_a_material():
bpy.context.active_object.active_material = bpy.data.materials.new("Material")
@given("I add a new group to IfcSelector")
@when("I add a new group to IfcSelector")
def i_add_a_new_collection_item():
bpy.data.scenes["Scene"].IfcSelectorProperties.groups.add()
@given("I add a new query to IfcSelector")
@when("I add a new query to IfcSelector")
def i_add_a_new_collection_item():
bpy.data.scenes["Scene"].IfcSelectorProperties.groups[0].queries.add()
@given(parsers.parse('the material "{name}" colour is set to "{colour}"'))
@when(parsers.parse('the material "{name}" colour is set to "{colour}"'))
@@ -37,7 +37,7 @@ class Usecase:
**{
"GlobalId": ifcopenshell.guid.new(),
"OwnerHistory": ifcopenshell.api.run("owner.create_owner_history", self.file),
"RelatedObjects": [self.settings["product"]],
"RelatedObjects": self.settings["product"],
"RelatingGroup": self.settings["group"],
}
)