From 485643863f35dc0e10d03cff021e8443c2c904b2 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Wed, 14 Aug 2024 14:10:36 +0500 Subject: [PATCH] bonsai bim module imports #5178 --- src/bonsai/bonsai/bim/__init__.py | 10 ++-- .../bim/data/webui/static/js/drawings.js | 2 +- src/bonsai/bonsai/bim/export_ifc.py | 14 +++--- src/bonsai/bonsai/bim/handler.py | 18 +++---- src/bonsai/bonsai/bim/helper.py | 4 +- src/bonsai/bonsai/bim/ifc.py | 26 +++++----- src/bonsai/bonsai/bim/import_ifc.py | 6 +-- .../bonsai/bim/module/aggregate/data.py | 2 +- .../bonsai/bim/module/aggregate/operator.py | 13 +++-- .../bonsai/bim/module/aggregate/prop.py | 4 +- src/bonsai/bonsai/bim/module/aggregate/ui.py | 8 +-- .../bonsai/bim/module/attribute/data.py | 2 +- .../bonsai/bim/module/attribute/operator.py | 15 +++--- .../bonsai/bim/module/attribute/prop.py | 4 +- src/bonsai/bonsai/bim/module/attribute/ui.py | 8 +-- .../bonsai/bim/module/augin/operator.py | 2 +- src/bonsai/bonsai/bim/module/bcf/operator.py | 8 +-- src/bonsai/bonsai/bim/module/bcf/prop.py | 2 +- src/bonsai/bonsai/bim/module/boundary/data.py | 2 +- .../bonsai/bim/module/boundary/decorator.py | 2 +- .../bonsai/bim/module/boundary/operator.py | 18 +++---- src/bonsai/bonsai/bim/module/boundary/prop.py | 4 +- src/bonsai/bonsai/bim/module/boundary/ui.py | 7 ++- src/bonsai/bonsai/bim/module/brick/data.py | 4 +- .../bonsai/bim/module/brick/operator.py | 12 ++--- src/bonsai/bonsai/bim/module/brick/prop.py | 10 ++-- src/bonsai/bonsai/bim/module/brick/ui.py | 8 +-- src/bonsai/bonsai/bim/module/bsdd/operator.py | 4 +- src/bonsai/bonsai/bim/module/bsdd/prop.py | 2 +- src/bonsai/bonsai/bim/module/bsdd/ui.py | 4 +- src/bonsai/bonsai/bim/module/cad/operator.py | 2 +- src/bonsai/bonsai/bim/module/cad/prop.py | 2 +- src/bonsai/bonsai/bim/module/cad/workspace.py | 6 +-- src/bonsai/bonsai/bim/module/clash/data.py | 2 +- .../bonsai/bim/module/clash/decorator.py | 2 +- .../bonsai/bim/module/clash/operator.py | 6 +-- src/bonsai/bonsai/bim/module/clash/prop.py | 2 +- src/bonsai/bonsai/bim/module/clash/ui.py | 8 +-- .../bonsai/bim/module/classification/data.py | 4 +- .../bim/module/classification/operator.py | 18 +++---- .../bonsai/bim/module/classification/prop.py | 6 +-- .../bonsai/bim/module/classification/ui.py | 20 ++++---- .../bonsai/bim/module/constraint/data.py | 2 +- .../bonsai/bim/module/constraint/operator.py | 8 +-- .../bonsai/bim/module/constraint/prop.py | 4 +- src/bonsai/bonsai/bim/module/constraint/ui.py | 6 +-- src/bonsai/bonsai/bim/module/context/data.py | 2 +- .../bonsai/bim/module/context/operator.py | 7 +-- src/bonsai/bonsai/bim/module/context/prop.py | 4 +- src/bonsai/bonsai/bim/module/context/ui.py | 14 +++--- src/bonsai/bonsai/bim/module/cost/data.py | 3 +- src/bonsai/bonsai/bim/module/cost/operator.py | 10 ++-- src/bonsai/bonsai/bim/module/cost/prop.py | 10 ++-- src/bonsai/bonsai/bim/module/cost/ui.py | 16 +++--- src/bonsai/bonsai/bim/module/covering/prop.py | 17 ------- .../bonsai/bim/module/covering/workspace.py | 8 ++- .../bonsai/bim/module/covetool/operator.py | 2 +- src/bonsai/bonsai/bim/module/csv/operator.py | 8 +-- src/bonsai/bonsai/bim/module/csv/prop.py | 2 +- src/bonsai/bonsai/bim/module/csv/ui.py | 8 +-- .../bonsai/bim/module/debug/operator.py | 18 +++---- src/bonsai/bonsai/bim/module/debug/prop.py | 2 +- src/bonsai/bonsai/bim/module/demo/data.py | 2 +- src/bonsai/bonsai/bim/module/demo/operator.py | 5 +- src/bonsai/bonsai/bim/module/demo/ui.py | 2 +- src/bonsai/bonsai/bim/module/diff/data.py | 2 +- src/bonsai/bonsai/bim/module/diff/operator.py | 14 +++--- src/bonsai/bonsai/bim/module/diff/prop.py | 4 +- src/bonsai/bonsai/bim/module/diff/ui.py | 10 ++-- src/bonsai/bonsai/bim/module/document/data.py | 2 +- .../bonsai/bim/module/document/operator.py | 6 +-- src/bonsai/bonsai/bim/module/document/prop.py | 2 +- src/bonsai/bonsai/bim/module/document/ui.py | 6 +-- .../bonsai/bim/module/drawing/annotation.py | 2 +- src/bonsai/bonsai/bim/module/drawing/data.py | 2 +- .../bonsai/bim/module/drawing/decoration.py | 10 ++-- .../bonsai/bim/module/drawing/gizmos.py | 2 +- .../bonsai/bim/module/drawing/handler.py | 4 +- .../bonsai/bim/module/drawing/helper.py | 2 +- .../bonsai/bim/module/drawing/operator.py | 45 ++++++++--------- src/bonsai/bonsai/bim/module/drawing/prop.py | 16 +++--- .../bonsai/bim/module/drawing/scheduler.py | 4 +- .../bonsai/bim/module/drawing/sheeter.py | 2 +- .../bonsai/bim/module/drawing/svgwriter.py | 12 ++--- src/bonsai/bonsai/bim/module/drawing/ui.py | 12 ++--- .../bonsai/bim/module/drawing/workspace.py | 13 ++--- src/bonsai/bonsai/bim/module/fm/operator.py | 2 +- src/bonsai/bonsai/bim/module/fm/prop.py | 4 +- src/bonsai/bonsai/bim/module/fm/ui.py | 6 +-- src/bonsai/bonsai/bim/module/geometry/data.py | 2 +- .../bonsai/bim/module/geometry/helper.py | 2 +- .../bonsai/bim/module/geometry/operator.py | 34 ++++++------- src/bonsai/bonsai/bim/module/geometry/prop.py | 10 ++-- src/bonsai/bonsai/bim/module/geometry/ui.py | 16 +++--- .../bonsai/bim/module/georeference/data.py | 2 +- .../bim/module/georeference/decorator.py | 4 +- .../bim/module/georeference/operator.py | 6 +-- .../bonsai/bim/module/georeference/prop.py | 8 +-- .../bonsai/bim/module/georeference/ui.py | 6 +-- src/bonsai/bonsai/bim/module/gis/prop.py | 2 +- src/bonsai/bonsai/bim/module/group/data.py | 2 +- .../bonsai/bim/module/group/operator.py | 8 +-- src/bonsai/bonsai/bim/module/group/prop.py | 4 +- src/bonsai/bonsai/bim/module/group/ui.py | 4 +- src/bonsai/bonsai/bim/module/ifcgit/data.py | 2 +- .../bonsai/bim/module/ifcgit/operator.py | 6 +-- src/bonsai/bonsai/bim/module/ifcgit/prop.py | 2 +- src/bonsai/bonsai/bim/module/ifcgit/ui.py | 2 +- src/bonsai/bonsai/bim/module/layer/data.py | 2 +- .../bonsai/bim/module/layer/operator.py | 8 +-- src/bonsai/bonsai/bim/module/layer/prop.py | 2 +- src/bonsai/bonsai/bim/module/layer/ui.py | 4 +- src/bonsai/bonsai/bim/module/library/data.py | 2 +- .../bonsai/bim/module/library/operator.py | 6 +-- src/bonsai/bonsai/bim/module/library/prop.py | 4 +- src/bonsai/bonsai/bim/module/library/ui.py | 10 ++-- src/bonsai/bonsai/bim/module/light/data.py | 2 +- .../bonsai/bim/module/light/decorator.py | 4 +- .../bonsai/bim/module/light/operator.py | 4 +- src/bonsai/bonsai/bim/module/light/prop.py | 6 +-- src/bonsai/bonsai/bim/module/light/ui.py | 4 +- src/bonsai/bonsai/bim/module/material/data.py | 4 +- .../bonsai/bim/module/material/operator.py | 32 ++++++------ src/bonsai/bonsai/bim/module/material/prop.py | 8 +-- src/bonsai/bonsai/bim/module/material/ui.py | 20 ++++---- src/bonsai/bonsai/bim/module/misc/operator.py | 12 ++--- src/bonsai/bonsai/bim/module/misc/prop.py | 2 +- src/bonsai/bonsai/bim/module/model/array.py | 2 +- .../bonsai/bim/module/model/covering.py | 4 +- src/bonsai/bonsai/bim/module/model/data.py | 2 +- .../bonsai/bim/module/model/decorator.py | 2 +- src/bonsai/bonsai/bim/module/model/door.py | 18 +++---- src/bonsai/bonsai/bim/module/model/grid.py | 2 +- src/bonsai/bonsai/bim/module/model/handler.py | 4 +- src/bonsai/bonsai/bim/module/model/mep.py | 20 ++++---- src/bonsai/bonsai/bim/module/model/opening.py | 43 +++++++--------- src/bonsai/bonsai/bim/module/model/pie.py | 6 +-- src/bonsai/bonsai/bim/module/model/product.py | 24 ++++----- src/bonsai/bonsai/bim/module/model/profile.py | 41 +++++++-------- src/bonsai/bonsai/bim/module/model/prop.py | 6 +-- src/bonsai/bonsai/bim/module/model/railing.py | 16 +++--- src/bonsai/bonsai/bim/module/model/roof.py | 14 +++--- src/bonsai/bonsai/bim/module/model/root.py | 6 +-- src/bonsai/bonsai/bim/module/model/slab.py | 35 ++++++------- src/bonsai/bonsai/bim/module/model/space.py | 4 +- src/bonsai/bonsai/bim/module/model/stair.py | 6 +-- .../bim/module/model/sverchok_modifier.py | 2 +- src/bonsai/bonsai/bim/module/model/ui.py | 34 ++++++------- src/bonsai/bonsai/bim/module/model/wall.py | 50 ++++++++----------- src/bonsai/bonsai/bim/module/model/window.py | 14 +++--- .../bonsai/bim/module/model/workspace.py | 14 +++--- src/bonsai/bonsai/bim/module/nest/data.py | 2 +- src/bonsai/bonsai/bim/module/nest/operator.py | 8 ++- src/bonsai/bonsai/bim/module/nest/prop.py | 4 +- src/bonsai/bonsai/bim/module/nest/ui.py | 4 +- src/bonsai/bonsai/bim/module/owner/data.py | 2 +- .../bonsai/bim/module/owner/operator.py | 6 +-- src/bonsai/bonsai/bim/module/owner/prop.py | 6 +-- src/bonsai/bonsai/bim/module/owner/ui.py | 16 +++--- .../bonsai/bim/module/patch/operator.py | 8 +-- src/bonsai/bonsai/bim/module/patch/prop.py | 2 +- src/bonsai/bonsai/bim/module/patch/ui.py | 6 +-- src/bonsai/bonsai/bim/module/profile/data.py | 2 +- .../bonsai/bim/module/profile/operator.py | 18 +++---- src/bonsai/bonsai/bim/module/profile/prop.py | 8 +-- src/bonsai/bonsai/bim/module/profile/ui.py | 10 ++-- src/bonsai/bonsai/bim/module/project/data.py | 4 +- .../bonsai/bim/module/project/decorator.py | 2 +- .../bonsai/bim/module/project/operator.py | 35 ++++++------- src/bonsai/bonsai/bim/module/project/prop.py | 6 +-- src/bonsai/bonsai/bim/module/project/ui.py | 16 +++--- .../bonsai/bim/module/project/workspace.py | 4 +- src/bonsai/bonsai/bim/module/pset/data.py | 10 ++-- src/bonsai/bonsai/bim/module/pset/operator.py | 18 +++---- src/bonsai/bonsai/bim/module/pset/prop.py | 28 +++++------ src/bonsai/bonsai/bim/module/pset/ui.py | 8 +-- .../bonsai/bim/module/pset_template/data.py | 4 +- .../bim/module/pset_template/operator.py | 46 ++++++++--------- .../bonsai/bim/module/pset_template/prop.py | 6 +-- .../bonsai/bim/module/pset_template/ui.py | 4 +- .../bonsai/bim/module/qto/calculator.py | 2 +- src/bonsai/bonsai/bim/module/qto/data.py | 2 +- src/bonsai/bonsai/bim/module/qto/operator.py | 8 +-- src/bonsai/bonsai/bim/module/qto/prop.py | 2 +- src/bonsai/bonsai/bim/module/qto/ui.py | 2 +- src/bonsai/bonsai/bim/module/resource/data.py | 2 +- .../bonsai/bim/module/resource/operator.py | 6 +-- src/bonsai/bonsai/bim/module/resource/prop.py | 22 ++++---- src/bonsai/bonsai/bim/module/resource/ui.py | 14 +++--- src/bonsai/bonsai/bim/module/root/data.py | 4 +- src/bonsai/bonsai/bim/module/root/operator.py | 17 +++---- src/bonsai/bonsai/bim/module/root/prop.py | 4 +- src/bonsai/bonsai/bim/module/root/ui.py | 8 +-- src/bonsai/bonsai/bim/module/search/data.py | 2 +- .../bonsai/bim/module/search/operator.py | 6 +-- src/bonsai/bonsai/bim/module/search/prop.py | 6 +-- src/bonsai/bonsai/bim/module/search/ui.py | 6 +-- src/bonsai/bonsai/bim/module/sequence/data.py | 2 +- .../bonsai/bim/module/sequence/operator.py | 8 +-- src/bonsai/bonsai/bim/module/sequence/prop.py | 20 ++++---- src/bonsai/bonsai/bim/module/sequence/ui.py | 16 +++--- src/bonsai/bonsai/bim/module/spatial/data.py | 2 +- .../bonsai/bim/module/spatial/operator.py | 11 ++-- src/bonsai/bonsai/bim/module/spatial/prop.py | 6 +-- src/bonsai/bonsai/bim/module/spatial/ui.py | 4 +- .../bonsai/bim/module/spatial/workspace.py | 12 ++--- .../bonsai/bim/module/structural/data.py | 2 +- .../bonsai/bim/module/structural/operator.py | 22 ++++---- .../bonsai/bim/module/structural/prop.py | 8 +-- src/bonsai/bonsai/bim/module/structural/ui.py | 12 ++--- .../bonsai/bim/module/structural/workspace.py | 5 +- src/bonsai/bonsai/bim/module/style/data.py | 2 +- .../bonsai/bim/module/style/operator.py | 13 +++-- src/bonsai/bonsai/bim/module/style/prop.py | 6 +-- src/bonsai/bonsai/bim/module/style/ui.py | 18 +++---- src/bonsai/bonsai/bim/module/system/data.py | 2 +- .../bonsai/bim/module/system/decorator.py | 4 +- .../bonsai/bim/module/system/operator.py | 15 +++--- src/bonsai/bonsai/bim/module/system/prop.py | 6 +-- src/bonsai/bonsai/bim/module/system/ui.py | 10 ++-- src/bonsai/bonsai/bim/module/tester/data.py | 2 +- .../bonsai/bim/module/tester/operator.py | 6 +-- src/bonsai/bonsai/bim/module/tester/prop.py | 4 +- src/bonsai/bonsai/bim/module/tester/ui.py | 4 +- src/bonsai/bonsai/bim/module/type/data.py | 2 +- src/bonsai/bonsai/bim/module/type/operator.py | 32 ++++++------ src/bonsai/bonsai/bim/module/type/prop.py | 8 +-- src/bonsai/bonsai/bim/module/type/ui.py | 10 ++-- src/bonsai/bonsai/bim/module/unit/data.py | 2 +- src/bonsai/bonsai/bim/module/unit/operator.py | 8 +-- src/bonsai/bonsai/bim/module/unit/prop.py | 6 +-- src/bonsai/bonsai/bim/module/unit/ui.py | 10 ++-- src/bonsai/bonsai/bim/module/void/data.py | 2 +- src/bonsai/bonsai/bim/module/void/operator.py | 24 ++++----- src/bonsai/bonsai/bim/module/void/ui.py | 4 +- src/bonsai/bonsai/bim/module/web/data.py | 2 +- src/bonsai/bonsai/bim/module/web/operator.py | 4 +- src/bonsai/bonsai/bim/module/web/ui.py | 2 +- src/bonsai/bonsai/bim/operator.py | 19 ++++--- src/bonsai/bonsai/bim/prop.py | 22 ++++---- src/bonsai/bonsai/bim/ui.py | 16 +++--- src/bonsai/test/bim/bootstrap.py | 14 +++--- src/bonsai/test/bim/feature/demo.feature | 2 +- .../module/drawing/test_segment_clipping.py | 2 +- src/bonsai/test/bim/test_feature.py | 18 +++---- src/bonsai/test/tool/test_qto.py | 9 ++-- 246 files changed, 1010 insertions(+), 1110 deletions(-) diff --git a/src/bonsai/bonsai/bim/__init__.py b/src/bonsai/bonsai/bim/__init__.py index 7e0329d3c4..546cd52b05 100644 --- a/src/bonsai/bonsai/bim/__init__.py +++ b/src/bonsai/bonsai/bim/__init__.py @@ -25,7 +25,7 @@ from . import handler, ui, prop, operator, helper from typing import Callable, Union try: - from blenderbim.translations import translations_dict + from bonsai.translations import translations_dict except ImportError: translations_dict = {} cwd = os.path.dirname(os.path.realpath(__file__)) @@ -91,7 +91,7 @@ modules = { for name in modules.keys(): - modules[name] = importlib.import_module(f"blenderbim.bim.module.{name}") + modules[name] = importlib.import_module(f"bonsai.bim.module.{name}") classes = [ @@ -254,7 +254,7 @@ def register(): icon_preview.load(icon_name, icon_path, "IMAGE") icons = icon_preview - bpy.app.translations.register("blenderbim", translations_dict) + bpy.app.translations.register("bonsai", translations_dict) def unregister(): @@ -291,10 +291,10 @@ def unregister(): km.keymap_items.remove(kmi) addon_keymaps.clear() - import blenderbim.tool as tool + import bonsai.tool as tool # use tuple() as method will be removing keys from dict for panel in tuple(original_scene_panels_polls.keys()): tool.Blender.remove_scene_panel_override(panel) - bpy.app.translations.unregister("blenderbim") + bpy.app.translations.unregister("bonsai") diff --git a/src/bonsai/bonsai/bim/data/webui/static/js/drawings.js b/src/bonsai/bonsai/bim/data/webui/static/js/drawings.js index d0bd19eef5..fa23d335c4 100644 --- a/src/bonsai/bonsai/bim/data/webui/static/js/drawings.js +++ b/src/bonsai/bonsai/bim/data/webui/static/js/drawings.js @@ -39,7 +39,7 @@ function connectSocket() { socket.on("svg_data", handleSvgData); } -// function used to get drawings data from blenderbim +// function used to get drawings data from Bonsai function handleWebConnect() { getDrawingsData(); } diff --git a/src/bonsai/bonsai/bim/export_ifc.py b/src/bonsai/bonsai/bim/export_ifc.py index 7bc8de0af5..b9f88a4316 100644 --- a/src/bonsai/bonsai/bim/export_ifc.py +++ b/src/bonsai/bonsai/bim/export_ifc.py @@ -28,12 +28,12 @@ import ifcopenshell import ifcopenshell.api import ifcopenshell.util.placement import ifcopenshell.util.unit -import blenderbim.tool as tool -import blenderbim.core.geometry -import blenderbim.core.aggregate -import blenderbim.core.spatial -import blenderbim.core.style -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.geometry +import bonsai.core.aggregate +import bonsai.core.spatial +import bonsai.core.style +from bonsai.bim.ifc import IfcStore from mathutils import Vector from typing import Union from logging import Logger @@ -151,7 +151,7 @@ class IfcExporter: return self.sync_grid_axis_object_placement(obj, element) if not hasattr(element, "ObjectPlacement"): return - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) return element def sync_grid_axis_object_placement(self, obj: bpy.types.Object, element: ifcopenshell.entity_instance) -> None: diff --git a/src/bonsai/bonsai/bim/handler.py b/src/bonsai/bonsai/bim/handler.py index ae06e81e1d..ed50d32921 100644 --- a/src/bonsai/bonsai/bim/handler.py +++ b/src/bonsai/bonsai/bim/handler.py @@ -22,14 +22,14 @@ import ifcopenshell.util.element import ifcopenshell.util.representation import ifcopenshell.util.unit import ifcopenshell.api.owner.settings -import blenderbim.bim -import blenderbim.tool as tool -import blenderbim.core.owner as core_owner +import bonsai.bim +import bonsai.tool as tool +import bonsai.core.owner as core_owner from bpy.app.handlers import persistent -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.owner.prop import get_user_person, get_user_organisation -from blenderbim.bim.module.model.data import AuthoringData -from blenderbim.bim.module.model.workspace import LIST_OF_TOOLS, TOOLS_TO_CLASSES_MAP +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.owner.prop import get_user_person, get_user_organisation +from bonsai.bim.module.model.data import AuthoringData +from bonsai.bim.module.model.workspace import LIST_OF_TOOLS, TOOLS_TO_CLASSES_MAP from mathutils import Vector from math import cos, degrees from typing import Union @@ -174,7 +174,7 @@ def refresh_ui_data(): Note that calling non-ifc-operators by itself doesn't refresh the UI data and it need to be refreshed manually if needed. """ - from blenderbim.bim import modules + from bonsai.bim import modules for name, value in modules.items(): try: @@ -299,7 +299,7 @@ def load_post(scene): # tab. We override default scene properties panels with our own poll # to hide them unless the user has chosen to view Blender properties. for panel in tool.Blender.get_scene_panels_list(): - if panel in blenderbim.bim.original_scene_panels_polls: + if panel in bonsai.bim.original_scene_panels_polls: continue tool.Blender.override_scene_panel(panel) tool.Blender.setup_tabs() diff --git a/src/bonsai/bonsai/bim/helper.py b/src/bonsai/bonsai/bim/helper.py index be0603be0e..298e7cc58d 100644 --- a/src/bonsai/bonsai/bim/helper.py +++ b/src/bonsai/bonsai/bim/helper.py @@ -27,8 +27,8 @@ import ifcopenshell.util.unit from ifcopenshell.util.doc import get_attribute_doc, get_predefined_type_doc, get_property_doc from mathutils import geometry from mathutils import Vector -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore from typing import Optional, Callable, Any, Union diff --git a/src/bonsai/bonsai/bim/ifc.py b/src/bonsai/bonsai/bim/ifc.py index b90e1a205e..a6199c433b 100644 --- a/src/bonsai/bonsai/bim/ifc.py +++ b/src/bonsai/bonsai/bim/ifc.py @@ -27,11 +27,11 @@ import traceback import ifcopenshell import ifcopenshell.geom import ifcopenshell.ifcopenshell_wrapper -import blenderbim -import blenderbim.bim.handler -import blenderbim.tool as tool +import bonsai +import bonsai.bim.handler +import bonsai.tool as tool from pathlib import Path -from blenderbim.tool.brick import BrickStore +from bonsai.tool.brick import BrickStore from typing import Set, Union, Optional, TypedDict, Callable @@ -252,11 +252,11 @@ class IfcStore: else: obj.BIMObjectProperties.ifc_definition_id = element.id() - blenderbim.bim.handler.subscribe_to(obj, "name", blenderbim.bim.handler.name_callback) + bonsai.bim.handler.subscribe_to(obj, "name", bonsai.bim.handler.name_callback) if isinstance(obj, bpy.types.Object): - blenderbim.bim.handler.subscribe_to( - obj, "active_material_index", blenderbim.bim.handler.active_material_index_callback + bonsai.bim.handler.subscribe_to( + obj, "active_material_index", bonsai.bim.handler.active_material_index_callback ) if IfcStore.history: @@ -279,10 +279,10 @@ class IfcStore: IfcStore.id_map[data["id"]] = obj if "guid" in data: IfcStore.guid_map[data["guid"]] = obj - blenderbim.bim.handler.subscribe_to(obj, "name", blenderbim.bim.handler.name_callback) + bonsai.bim.handler.subscribe_to(obj, "name", bonsai.bim.handler.name_callback) if isinstance(obj, bpy.types.Object): - blenderbim.bim.handler.subscribe_to( - obj, "active_material_index", blenderbim.bim.handler.active_material_index_callback + bonsai.bim.handler.subscribe_to( + obj, "active_material_index", bonsai.bim.handler.active_material_index_callback ) # TODO Listeners are not re-registered. Does this cause nasty problems to debug later on? # TODO We're handling id_map and guid_map, but what about edited_objs? This might cause big problems. @@ -364,7 +364,7 @@ class IfcStore: @staticmethod def execute_ifc_operator(operator: bpy.types.Operator, context: bpy.types.Context, is_invoke=False): - blenderbim.last_actions.append({"type": "operator", "name": operator.bl_idname}) + bonsai.last_actions.append({"type": "operator", "name": operator.bl_idname}) bpy.context.scene.BIMProperties.is_dirty = True is_top_level_operator = not bool(IfcStore.current_transaction) @@ -385,7 +385,7 @@ class IfcStore: else: result = getattr(operator, "_execute")(context) except: - blenderbim.last_error = traceback.format_exc() + bonsai.last_error = traceback.format_exc() raise if is_top_level_operator: @@ -397,7 +397,7 @@ class IfcStore: if BrickStore.graph is not None: # `if BrickStore.graph` by itself takes ages. BrickStore.end_transaction() IfcStore.end_transaction(operator) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return result diff --git a/src/bonsai/bonsai/bim/import_ifc.py b/src/bonsai/bonsai/bim/import_ifc.py index 288619f92c..1d176b5bd3 100644 --- a/src/bonsai/bonsai/bim/import_ifc.py +++ b/src/bonsai/bonsai/bim/import_ifc.py @@ -32,10 +32,10 @@ import ifcopenshell.util.geolocation import ifcopenshell.util.placement import ifcopenshell.util.representation import ifcopenshell.util.shape -import blenderbim.tool as tool +import bonsai.tool as tool from itertools import chain, accumulate -from blenderbim.bim.ifc import IfcStore, IFC_CONNECTED_TYPE -from blenderbim.tool.loader import OBJECT_DATA_TYPE +from bonsai.bim.ifc import IfcStore, IFC_CONNECTED_TYPE +from bonsai.tool.loader import OBJECT_DATA_TYPE from typing import Dict, Union, Optional, Any diff --git a/src/bonsai/bonsai/bim/module/aggregate/data.py b/src/bonsai/bonsai/bim/module/aggregate/data.py index ba8be5f253..cdef903ce2 100644 --- a/src/bonsai/bonsai/bim/module/aggregate/data.py +++ b/src/bonsai/bonsai/bim/module/aggregate/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell.util.element diff --git a/src/bonsai/bonsai/bim/module/aggregate/operator.py b/src/bonsai/bonsai/bim/module/aggregate/operator.py index 63383077e8..187d1cb648 100644 --- a/src/bonsai/bonsai/bim/module/aggregate/operator.py +++ b/src/bonsai/bonsai/bim/module/aggregate/operator.py @@ -20,11 +20,10 @@ import bpy import ifcopenshell import ifcopenshell.api import ifcopenshell.util.element -import blenderbim.tool as tool -import blenderbim.core.aggregate as core -import blenderbim.core.spatial -import blenderbim.bim.handler -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.aggregate as core +import bonsai.core.spatial +from bonsai.bim.ifc import IfcStore class BIM_OT_aggregate_assign_object(bpy.types.Operator, tool.Ifc.Operator): @@ -164,7 +163,7 @@ class BIM_OT_add_aggregate(bpy.types.Operator, tool.Ifc.Operator): related_obj=aggregate, ) elif current_container: - blenderbim.core.spatial.assign_container( + bonsai.core.spatial.assign_container( tool.Ifc, tool.Collector, tool.Spatial, @@ -284,7 +283,7 @@ class BIM_OT_add_part_to_object(bpy.types.Operator, tool.Ifc.Operator): part_class=self.part_class, part_name=self.part_name, ) - blenderbim.core.spatial.import_spatial_decomposition(tool.Spatial) + bonsai.core.spatial.import_spatial_decomposition(tool.Spatial) class BIM_OT_break_link_to_other_aggregates(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/aggregate/prop.py b/src/bonsai/bonsai/bim/module/aggregate/prop.py index a139a76615..b719d2eed0 100644 --- a/src/bonsai/bonsai/bim/module/aggregate/prop.py +++ b/src/bonsai/bonsai/bim/module/aggregate/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.spatial.data import SpatialData +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.spatial.data import SpatialData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/aggregate/ui.py b/src/bonsai/bonsai/bim/module/aggregate/ui.py index 83abe12f46..183ec0064c 100644 --- a/src/bonsai/bonsai/bim/module/aggregate/ui.py +++ b/src/bonsai/bonsai/bim/module/aggregate/ui.py @@ -17,10 +17,10 @@ # along with Bonsai. If not, see . from bpy.types import Panel -from blenderbim.bim.module.aggregate.data import AggregateData -from blenderbim.bim.module.group.data import GroupsData, ObjectGroupsData -from blenderbim.bim.ifc import IfcStore -import blenderbim.tool as tool +from bonsai.bim.module.aggregate.data import AggregateData +from bonsai.bim.module.group.data import GroupsData, ObjectGroupsData +from bonsai.bim.ifc import IfcStore +import bonsai.tool as tool class BIM_PT_aggregate(Panel): diff --git a/src/bonsai/bonsai/bim/module/attribute/data.py b/src/bonsai/bonsai/bim/module/attribute/data.py index 117788146c..1f28c314fa 100644 --- a/src/bonsai/bonsai/bim/module/attribute/data.py +++ b/src/bonsai/bonsai/bim/module/attribute/data.py @@ -18,7 +18,7 @@ import bpy import ifcopenshell -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/attribute/operator.py b/src/bonsai/bonsai/bim/module/attribute/operator.py index a09f758749..24102a66ef 100644 --- a/src/bonsai/bonsai/bim/module/attribute/operator.py +++ b/src/bonsai/bonsai/bim/module/attribute/operator.py @@ -22,11 +22,10 @@ import ifcopenshell import ifcopenshell.api import ifcopenshell.guid import ifcopenshell.util.element -import blenderbim.bim.helper -import blenderbim.bim.handler -import blenderbim.tool as tool -import blenderbim.core.attribute as core -from blenderbim.bim.ifc import IfcStore +import bonsai.bim.helper +import bonsai.tool as tool +import bonsai.core.attribute as core +from bonsai.bim.ifc import IfcStore class EnableEditingAttributes(bpy.types.Operator): @@ -59,13 +58,13 @@ class EnableEditingAttributes(bpy.types.Operator): new.data_type = "string" new.ifc_class = data["type"] new.string_value = "" if new.is_null else json.dumps(data[name]) - blenderbim.bim.helper.add_attribute_description(new) + bonsai.bim.helper.add_attribute_description(new) new.description += " The degrees, minutes and seconds should follow this format : [12,34,56]" if name in ("PredefinedType", "ObjectType") and has_inherited_predefined_type: props.attributes.remove(len(props.attributes) - 1) return True - blenderbim.bim.helper.import_attributes2(element, props.attributes, callback=callback) + bonsai.bim.helper.import_attributes2(element, props.attributes, callback=callback) props.is_editing_attributes = True return {"FINISHED"} @@ -106,7 +105,7 @@ class EditAttributes(bpy.types.Operator, tool.Ifc.Operator): attributes[prop.name] = None return True - attributes = blenderbim.bim.helper.export_attributes(props.attributes, callback=callback) + attributes = bonsai.bim.helper.export_attributes(props.attributes, callback=callback) ifcopenshell.api.run("attribute.edit_attributes", self.file, product=product, attributes=attributes) bpy.ops.bim.disable_editing_attributes(obj=obj.name) return {"FINISHED"} diff --git a/src/bonsai/bonsai/bim/module/attribute/prop.py b/src/bonsai/bonsai/bim/module/attribute/prop.py index cb07b8e8b1..207fd927fd 100644 --- a/src/bonsai/bonsai/bim/module/attribute/prop.py +++ b/src/bonsai/bonsai/bim/module/attribute/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.ifc import IfcStore +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/attribute/ui.py b/src/bonsai/bonsai/bim/module/attribute/ui.py index 5dce3a8eca..8565181af3 100644 --- a/src/bonsai/bonsai/bim/module/attribute/ui.py +++ b/src/bonsai/bonsai/bim/module/attribute/ui.py @@ -16,10 +16,10 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.bim.helper +import bonsai.bim.helper from bpy.types import Panel -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.attribute.data import AttributesData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.attribute.data import AttributesData def draw_ui(context, layout, attributes): @@ -34,7 +34,7 @@ def draw_ui(context, layout, attributes): op = row.operator("bim.disable_editing_attributes", icon="CANCEL", text="") op.obj = obj.name - blenderbim.bim.helper.draw_attributes(props.attributes, layout, copy_operator="bim.copy_attribute_to_selection") + bonsai.bim.helper.draw_attributes(props.attributes, layout, copy_operator="bim.copy_attribute_to_selection") else: row = layout.row() op = row.operator("bim.enable_editing_attributes", icon="GREASEPENCIL", text="Edit") diff --git a/src/bonsai/bonsai/bim/module/augin/operator.py b/src/bonsai/bonsai/bim/module/augin/operator.py index 5cbb86c1c0..965279e9b7 100644 --- a/src/bonsai/bonsai/bim/module/augin/operator.py +++ b/src/bonsai/bonsai/bim/module/augin/operator.py @@ -24,7 +24,7 @@ import shutil import requests import tempfile import datetime -import blenderbim.tool as tool +import bonsai.tool as tool class AuginLogin(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/bcf/operator.py b/src/bonsai/bonsai/bim/module/bcf/operator.py index 04746165be..d4c8e3894e 100644 --- a/src/bonsai/bonsai/bim/module/bcf/operator.py +++ b/src/bonsai/bonsai/bim/module/bcf/operator.py @@ -31,11 +31,11 @@ import webbrowser import ifcopenshell import ifcopenshell.util.geolocation import ifcopenshell.util.unit -import blenderbim.tool as tool -import blenderbim.bim.module.bcf.prop as bcf_prop -import blenderbim.bim.module.bcf.bcfstore as bcfstore +import bonsai.tool as tool +import bonsai.bim.module.bcf.prop as bcf_prop +import bonsai.bim.module.bcf.bcfstore as bcfstore from pathlib import Path -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.ifc import IfcStore from math import radians, degrees, atan, tan, cos, sin from mathutils import Vector, Matrix, Euler, geometry from xsdata.models.datatype import XmlDateTime diff --git a/src/bonsai/bonsai/bim/module/bcf/prop.py b/src/bonsai/bonsai/bim/module/bcf/prop.py index 9159c57621..ad10fc8c5a 100644 --- a/src/bonsai/bonsai/bim/module/bcf/prop.py +++ b/src/bonsai/bonsai/bim/module/bcf/prop.py @@ -18,7 +18,7 @@ import bpy from . import bcfstore -from blenderbim.bim.prop import StrProperty +from bonsai.bim.prop import StrProperty from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/boundary/data.py b/src/bonsai/bonsai/bim/module/boundary/data.py index f03fe8b2b5..e7f82caf4c 100644 --- a/src/bonsai/bonsai/bim/module/boundary/data.py +++ b/src/bonsai/bonsai/bim/module/boundary/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/boundary/decorator.py b/src/bonsai/bonsai/bim/module/boundary/decorator.py index 4298bd1f5d..be25c2c0d7 100644 --- a/src/bonsai/bonsai/bim/module/boundary/decorator.py +++ b/src/bonsai/bonsai/bim/module/boundary/decorator.py @@ -18,7 +18,7 @@ import gpu import bmesh -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import SpaceView3D from mathutils import Vector from gpu_extras.batch import batch_for_shader diff --git a/src/bonsai/bonsai/bim/module/boundary/operator.py b/src/bonsai/bonsai/bim/module/boundary/operator.py index 9673202848..92bceb930b 100644 --- a/src/bonsai/bonsai/bim/module/boundary/operator.py +++ b/src/bonsai/bonsai/bim/module/boundary/operator.py @@ -31,15 +31,15 @@ import ifcopenshell.util.shape import ifcopenshell.util.element import ifcopenshell.util.placement import ifcopenshell.util.representation -import blenderbim.tool as tool -import blenderbim.bim.import_ifc as import_ifc +import bonsai.tool as tool +import bonsai.bim.import_ifc as import_ifc from math import pi, inf, degrees, acos, radians from mathutils import Vector, Matrix -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.model.decorator import ProfileDecorator -from blenderbim.bim.module.boundary.decorator import BoundaryDecorator -import blenderbim.core -import blenderbim.core.geometry +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.model.decorator import ProfileDecorator +from bonsai.bim.module.boundary.decorator import BoundaryDecorator +import bonsai.core +import bonsai.core.geometry def get_boundaries_collection(blender_space): @@ -521,7 +521,7 @@ class ShowBoundaries(bpy.types.Operator, tool.Ifc.Operator): if not element or not getattr(element, "BoundedBy", None): continue if tool.Ifc.is_moved(obj): - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) element = tool.Ifc.get_entity(obj) for rel in element.BoundedBy or []: boundary_obj = loader.load_boundary(rel, obj) @@ -1014,7 +1014,7 @@ class AddBoundary(bpy.types.Operator, tool.Ifc.Operator): def get_flattened_polygon(self, element, relating_space_obj, target_face_matrix_i): obj = tool.Ifc.get_object(element) if obj and tool.Ifc.is_moved(obj): - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) space_matrix_i = relating_space_obj.matrix_world.inverted() diff --git a/src/bonsai/bonsai/bim/module/boundary/prop.py b/src/bonsai/bonsai/bim/module/boundary/prop.py index aea588ee2f..30b9fa75be 100644 --- a/src/bonsai/bonsai/bim/module/boundary/prop.py +++ b/src/bonsai/bonsai/bim/module/boundary/prop.py @@ -18,7 +18,7 @@ import bpy from bpy.types import PropertyGroup -from blenderbim.bim.prop import ObjProperty +from bonsai.bim.prop import ObjProperty from bpy.props import ( PointerProperty, StringProperty, @@ -29,7 +29,7 @@ from bpy.props import ( FloatVectorProperty, CollectionProperty, ) -import blenderbim.tool as tool +import bonsai.tool as tool def space_filter(self, object): diff --git a/src/bonsai/bonsai/bim/module/boundary/ui.py b/src/bonsai/bonsai/bim/module/boundary/ui.py index dd04eab93a..a6fc257b9e 100644 --- a/src/bonsai/bonsai/bim/module/boundary/ui.py +++ b/src/bonsai/bonsai/bim/module/boundary/ui.py @@ -17,11 +17,10 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -import blenderbim.tool as tool -from blenderbim.bim.module.boundary.data import SpaceBoundariesData +from bonsai.bim.ifc import IfcStore +import bonsai.tool as tool +from bonsai.bim.module.boundary.data import SpaceBoundariesData class BIM_PT_SceneBoundaries(Panel): diff --git a/src/bonsai/bonsai/bim/module/brick/data.py b/src/bonsai/bonsai/bim/module/brick/data.py index 7e72f691e0..737896ad3c 100644 --- a/src/bonsai/bonsai/bim/module/brick/data.py +++ b/src/bonsai/bonsai/bim/module/brick/data.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool -from blenderbim.tool.brick import BrickStore +import bonsai.tool as tool +from bonsai.tool.brick import BrickStore try: from rdflib import URIRef, BNode diff --git a/src/bonsai/bonsai/bim/module/brick/operator.py b/src/bonsai/bonsai/bim/module/brick/operator.py index 50060994b9..e76da467fa 100644 --- a/src/bonsai/bonsai/bim/module/brick/operator.py +++ b/src/bonsai/bonsai/bim/module/brick/operator.py @@ -19,11 +19,11 @@ import os import bpy import ifcopenshell.api -import blenderbim.tool as tool -import blenderbim.core.brick as core -import blenderbim.bim.handler -from blenderbim.bim.ifc import IfcStore -from blenderbim.tool.brick import BrickStore +import bonsai.tool as tool +import bonsai.core.brick as core +import bonsai.bim.handler +from bonsai.bim.ifc import IfcStore +from bonsai.tool.brick import BrickStore class LoadBrickProject(bpy.types.Operator, tool.Ifc.Operator): @@ -197,7 +197,7 @@ class NewBrickFile(bpy.types.Operator): } IfcStore.add_transaction_operation(self, rollback=lambda data: True, commit=self.commit) IfcStore.end_transaction(self) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} def _execute(self, context): diff --git a/src/bonsai/bonsai/bim/module/brick/prop.py b/src/bonsai/bonsai/bim/module/brick/prop.py index 7870468208..8f0a87e21a 100644 --- a/src/bonsai/bonsai/bim/module/brick/prop.py +++ b/src/bonsai/bonsai/bim/module/brick/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.module.brick.data import BrickschemaData, BrickschemaReferencesData -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.module.brick.data import BrickschemaData, BrickschemaReferencesData +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, @@ -30,9 +30,9 @@ from bpy.props import ( FloatVectorProperty, CollectionProperty, ) -import blenderbim.core.brick as core -import blenderbim.tool.brick as tool -from blenderbim.tool.brick import BrickStore +import bonsai.core.brick as core +import bonsai.tool.brick as tool +from bonsai.tool.brick import BrickStore def update_active_brick_index(self, context): diff --git a/src/bonsai/bonsai/bim/module/brick/ui.py b/src/bonsai/bonsai/bim/module/brick/ui.py index c76e2176ae..141dba5559 100644 --- a/src/bonsai/bonsai/bim/module/brick/ui.py +++ b/src/bonsai/bonsai/bim/module/brick/ui.py @@ -16,11 +16,11 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import Panel, UIList -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.module.brick.data import BrickschemaData, BrickschemaReferencesData -from blenderbim.tool.brick import BrickStore +from bonsai.bim.helper import prop_with_search +from bonsai.bim.module.brick.data import BrickschemaData, BrickschemaReferencesData +from bonsai.tool.brick import BrickStore class BIM_PT_brickschema(Panel): diff --git a/src/bonsai/bonsai/bim/module/bsdd/operator.py b/src/bonsai/bonsai/bim/module/bsdd/operator.py index 33cd06cb91..0dadf3c354 100644 --- a/src/bonsai/bonsai/bim/module/bsdd/operator.py +++ b/src/bonsai/bonsai/bim/module/bsdd/operator.py @@ -18,8 +18,8 @@ import bpy import bsdd -import blenderbim.tool as tool -from blenderbim.core import bsdd as core +import bonsai.tool as tool +from bonsai.core import bsdd as core class LoadBSDDDomains(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/bsdd/prop.py b/src/bonsai/bonsai/bim/module/bsdd/prop.py index dca8683245..0ab20d439b 100644 --- a/src/bonsai/bonsai/bim/module/bsdd/prop.py +++ b/src/bonsai/bonsai/bim/module/bsdd/prop.py @@ -18,7 +18,7 @@ import bpy from bpy.types import PropertyGroup -from blenderbim.bim.prop import Attribute, StrProperty +from bonsai.bim.prop import Attribute, StrProperty from bpy.props import ( PointerProperty, StringProperty, diff --git a/src/bonsai/bonsai/bim/module/bsdd/ui.py b/src/bonsai/bonsai/bim/module/bsdd/ui.py index 96b74ee85f..ac3e633d8a 100644 --- a/src/bonsai/bonsai/bim/module/bsdd/ui.py +++ b/src/bonsai/bonsai/bim/module/bsdd/ui.py @@ -16,9 +16,9 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.ifc import IfcStore class BIM_PT_bsdd(Panel): diff --git a/src/bonsai/bonsai/bim/module/cad/operator.py b/src/bonsai/bonsai/bim/module/cad/operator.py index 94117289db..31037abc1f 100644 --- a/src/bonsai/bonsai/bim/module/cad/operator.py +++ b/src/bonsai/bonsai/bim/module/cad/operator.py @@ -21,7 +21,7 @@ import math import bmesh import mathutils import bpy_extras -import blenderbim.tool as tool +import bonsai.tool as tool from mathutils import Vector, Matrix from math import pi, radians, sin, cos, sqrt import ifcopenshell.util.unit diff --git a/src/bonsai/bonsai/bim/module/cad/prop.py b/src/bonsai/bonsai/bim/module/cad/prop.py index e7fd36d1f6..3d0c8f687e 100644 --- a/src/bonsai/bonsai/bim/module/cad/prop.py +++ b/src/bonsai/bonsai/bim/module/cad/prop.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.module.model.data import AuthoringData +from bonsai.bim.module.model.data import AuthoringData from bpy.types import PropertyGroup from math import pi diff --git a/src/bonsai/bonsai/bim/module/cad/workspace.py b/src/bonsai/bonsai/bim/module/cad/workspace.py index 884642b616..501fbdb11f 100644 --- a/src/bonsai/bonsai/bim/module/cad/workspace.py +++ b/src/bonsai/bonsai/bim/module/cad/workspace.py @@ -18,11 +18,11 @@ import os import bpy -import blenderbim.tool as tool -import blenderbim.bim.module.type.prop as type_prop +import bonsai.tool as tool +import bonsai.bim.module.type.prop as type_prop import ifcopenshell.util.unit from bpy.types import WorkSpaceTool -from blenderbim.bim.module.model.data import AuthoringData, RailingData, RoofData +from bonsai.bim.module.model.data import AuthoringData, RailingData, RoofData class CadTool(WorkSpaceTool): diff --git a/src/bonsai/bonsai/bim/module/clash/data.py b/src/bonsai/bonsai/bim/module/clash/data.py index 333658f63e..b994a1b750 100644 --- a/src/bonsai/bonsai/bim/module/clash/data.py +++ b/src/bonsai/bonsai/bim/module/clash/data.py @@ -19,7 +19,7 @@ import bpy import json import ifcopenshell.util.element -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/clash/decorator.py b/src/bonsai/bonsai/bim/module/clash/decorator.py index 3b348bf521..f23b8962c6 100644 --- a/src/bonsai/bonsai/bim/module/clash/decorator.py +++ b/src/bonsai/bonsai/bim/module/clash/decorator.py @@ -19,7 +19,7 @@ import blf import gpu import bmesh -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import SpaceView3D from mathutils import Vector from gpu_extras.batch import batch_for_shader diff --git a/src/bonsai/bonsai/bim/module/clash/operator.py b/src/bonsai/bonsai/bim/module/clash/operator.py index 890c7ce11e..00e7e75f0a 100644 --- a/src/bonsai/bonsai/bim/module/clash/operator.py +++ b/src/bonsai/bonsai/bim/module/clash/operator.py @@ -23,11 +23,11 @@ import bmesh import logging import numpy as np import ifcopenshell -import blenderbim.tool as tool +import bonsai.tool as tool from math import radians from mathutils import Matrix, Vector -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.clash.decorator import ClashDecorator +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.clash.decorator import ClashDecorator class ExportClashSets(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/clash/prop.py b/src/bonsai/bonsai/bim/module/clash/prop.py index b2a84a5d3f..3902eb28bc 100644 --- a/src/bonsai/bonsai/bim/module/clash/prop.py +++ b/src/bonsai/bonsai/bim/module/clash/prop.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute, BIMFilterGroup +from bonsai.bim.prop import StrProperty, Attribute, BIMFilterGroup from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/clash/ui.py b/src/bonsai/bonsai/bim/module/clash/ui.py index 852498ba0a..5c969da837 100644 --- a/src/bonsai/bonsai/bim/module/clash/ui.py +++ b/src/bonsai/bonsai/bim/module/clash/ui.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper +import bonsai.bim.helper from bpy.types import Panel -from blenderbim.bim.module.clash.data import ClashData +from bonsai.bim.module.clash.data import ClashData class BIM_PT_ifcclash(Panel): @@ -92,7 +92,7 @@ class BIM_PT_ifcclash(Panel): op.group = "a" if source.mode != "a": - blenderbim.bim.helper.draw_filter( + bonsai.bim.helper.draw_filter( layout, source.filter_groups, ClashData, f"clash_{props.active_clash_set_index}_a_{index}" ) @@ -112,7 +112,7 @@ class BIM_PT_ifcclash(Panel): op.group = "b" if source.mode != "a": - blenderbim.bim.helper.draw_filter( + bonsai.bim.helper.draw_filter( layout, source.filter_groups, ClashData, f"clash_{props.active_clash_set_index}_b_{index}" ) diff --git a/src/bonsai/bonsai/bim/module/classification/data.py b/src/bonsai/bonsai/bim/module/classification/data.py index ff0d5246f0..1dff8c3875 100644 --- a/src/bonsai/bonsai/bim/module/classification/data.py +++ b/src/bonsai/bonsai/bim/module/classification/data.py @@ -20,8 +20,8 @@ import bpy import ifcopenshell import ifcopenshell.util.date import ifcopenshell.util.classification -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore def refresh(): diff --git a/src/bonsai/bonsai/bim/module/classification/operator.py b/src/bonsai/bonsai/bim/module/classification/operator.py index 34feee30eb..6ba4e7976b 100644 --- a/src/bonsai/bonsai/bim/module/classification/operator.py +++ b/src/bonsai/bonsai/bim/module/classification/operator.py @@ -22,9 +22,9 @@ import ifcopenshell import ifcopenshell.api import ifcopenshell.util.classification import ifcopenshell.util.element -import blenderbim.tool as tool -import blenderbim.bim.helper -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.bim.helper +from bonsai.bim.ifc import IfcStore class LoadClassificationLibrary(bpy.types.Operator, tool.Ifc.Operator): @@ -63,7 +63,7 @@ class AddManualClassification(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): props = context.scene.BIMClassificationProperties - attributes = blenderbim.bim.helper.export_attributes(props.classification_attributes) + attributes = bonsai.bim.helper.export_attributes(props.classification_attributes) classification = ifcopenshell.api.run( "classification.add_classification", tool.Ifc.get(), classification="Unnamed" ) @@ -89,7 +89,7 @@ class AddManualClassificationReference(bpy.types.Operator, tool.Ifc.Operator): else: objects = [self.obj] props = context.scene.BIMClassificationReferenceProperties - attributes = blenderbim.bim.helper.export_attributes(props.reference_attributes) + attributes = bonsai.bim.helper.export_attributes(props.reference_attributes) products = [ tool.Ifc.get().by_id(ifc_definition_id) for obj in objects @@ -152,7 +152,7 @@ class EnableAddingManualClassification(bpy.types.Operator): props.is_adding = True props.active_classification_id = 0 props.classification_attributes.clear() - blenderbim.bim.helper.import_attributes2("IfcClassification", props.classification_attributes) + bonsai.bim.helper.import_attributes2("IfcClassification", props.classification_attributes) return {"FINISHED"} @@ -176,7 +176,7 @@ class EnableAddingManualClassificationReference(bpy.types.Operator): props = context.scene.BIMClassificationReferenceProperties props.is_adding = True props.reference_attributes.clear() - blenderbim.bim.helper.import_attributes2("IfcClassificationReference", props.reference_attributes) + bonsai.bim.helper.import_attributes2("IfcClassificationReference", props.reference_attributes) return {"FINISHED"} @@ -210,7 +210,7 @@ class EnableEditingClassification(bpy.types.Operator): props = context.scene.BIMClassificationProperties props.classification_attributes.clear() - blenderbim.bim.helper.import_attributes2( + bonsai.bim.helper.import_attributes2( tool.Ifc.get().by_id(self.classification), props.classification_attributes, callback ) props.active_classification_id = self.classification @@ -280,7 +280,7 @@ class EnableEditingClassificationReference(bpy.types.Operator): def execute(self, context): props = context.scene.BIMClassificationReferenceProperties props.reference_attributes.clear() - blenderbim.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.reference), props.reference_attributes) + bonsai.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.reference), props.reference_attributes) props.active_reference_id = self.reference return {"FINISHED"} diff --git a/src/bonsai/bonsai/bim/module/classification/prop.py b/src/bonsai/bonsai/bim/module/classification/prop.py index 9679c87c94..a39dfb74e5 100644 --- a/src/bonsai/bonsai/bim/module/classification/prop.py +++ b/src/bonsai/bonsai/bim/module/classification/prop.py @@ -17,10 +17,8 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.classification.data import ClassificationsData, ClassificationReferencesData +from bonsai.bim.prop import Attribute +from bonsai.bim.module.classification.data import ClassificationsData, ClassificationReferencesData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/classification/ui.py b/src/bonsai/bonsai/bim/module/classification/ui.py index bbbeb1ecb6..f6b429619f 100644 --- a/src/bonsai/bonsai/bim/module/classification/ui.py +++ b/src/bonsai/bonsai/bim/module/classification/ui.py @@ -16,12 +16,12 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.bim.helper -import blenderbim.tool as tool -import blenderbim.bim.module.classification.prop as classification_prop +import bonsai.bim.helper +import bonsai.tool as tool +import bonsai.bim.module.classification.prop as classification_prop from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.classification.data import ( +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.classification.data import ( ClassificationsData, ClassificationReferencesData, MaterialClassificationsData, @@ -67,7 +67,7 @@ class BIM_PT_classifications(Panel): def draw_add_manual_ui(self, context): if self.props.is_adding: - blenderbim.bim.helper.draw_attributes(self.props.classification_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.classification_attributes, self.layout) row = self.layout.row(align=True) row.operator("bim.add_manual_classification", text="Save", icon="CHECKMARK") row.operator("bim.disable_adding_manual_classification", text="", icon="CANCEL") @@ -104,7 +104,7 @@ class BIM_PT_classifications(Panel): row = self.layout.row(align=True) row.operator("bim.edit_classification", text="Save changes", icon="CHECKMARK") row.operator("bim.disable_editing_classification", text="", icon="CANCEL") - blenderbim.bim.helper.draw_attributes(self.props.classification_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.classification_attributes, self.layout) def draw_ui(self, classification): row = self.layout.row(align=True) @@ -151,7 +151,7 @@ class ReferenceUI: row = self.layout.row() row.prop(self.props, "classifications", text="") if self.props.is_adding: - blenderbim.bim.helper.draw_attributes(self.props.reference_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.reference_attributes, self.layout) row = self.layout.row(align=True) op = row.operator("bim.add_manual_classification_reference", text="Save", icon="CHECKMARK") op.obj_type = self.data.data["object_type"] @@ -203,7 +203,7 @@ class ReferenceUI: box = self.layout.box() row = box.row() row.label(text=pset.name, icon="COPY_ID") - blenderbim.bim.helper.draw_attributes(pset.properties, box) + bonsai.bim.helper.draw_attributes(pset.properties, box) def draw_add_file_ui(self, context): if not self.data.data["active_classification_library"]: @@ -243,7 +243,7 @@ class ReferenceUI: row = self.layout.row(align=True) row.operator("bim.edit_classification_reference", text="Save changes", icon="CHECKMARK") row.operator("bim.disable_editing_classification_reference", text="", icon="CANCEL") - blenderbim.bim.helper.draw_attributes(self.props.reference_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.reference_attributes, self.layout) def draw_reference_ui(self, reference): row = self.layout.row(align=True) diff --git a/src/bonsai/bonsai/bim/module/constraint/data.py b/src/bonsai/bonsai/bim/module/constraint/data.py index 6c57e115eb..e4ded98bdc 100644 --- a/src/bonsai/bonsai/bim/module/constraint/data.py +++ b/src/bonsai/bonsai/bim/module/constraint/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/constraint/operator.py b/src/bonsai/bonsai/bim/module/constraint/operator.py index abcad1a6be..78c48775e0 100644 --- a/src/bonsai/bonsai/bim/module/constraint/operator.py +++ b/src/bonsai/bonsai/bim/module/constraint/operator.py @@ -20,9 +20,9 @@ import bpy import json import ifcopenshell.api import ifcopenshell.util.attribute -import blenderbim.bim.helper -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.bim.helper +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore class LoadObjectives(bpy.types.Operator): @@ -62,7 +62,7 @@ class EnableEditingConstraint(bpy.types.Operator): def execute(self, context): props = context.scene.BIMConstraintProperties props.constraint_attributes.clear() - blenderbim.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.constraint), props.constraint_attributes) + bonsai.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.constraint), props.constraint_attributes) props.active_constraint_id = self.constraint return {"FINISHED"} diff --git a/src/bonsai/bonsai/bim/module/constraint/prop.py b/src/bonsai/bonsai/bim/module/constraint/prop.py index ae5476c337..f8f3678ebb 100644 --- a/src/bonsai/bonsai/bim/module/constraint/prop.py +++ b/src/bonsai/bonsai/bim/module/constraint/prop.py @@ -18,8 +18,8 @@ import bpy from ifcopenshell.util.doc import get_entity_doc -import blenderbim.tool as tool -from blenderbim.bim.prop import Attribute +import bonsai.tool as tool +from bonsai.bim.prop import Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/constraint/ui.py b/src/bonsai/bonsai/bim/module/constraint/ui.py index 811a8ec4ff..9c77ba4033 100644 --- a/src/bonsai/bonsai/bim/module/constraint/ui.py +++ b/src/bonsai/bonsai/bim/module/constraint/ui.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import draw_attributes -from blenderbim.bim.module.constraint.data import ConstraintsData, ObjectConstraintsData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import draw_attributes +from bonsai.bim.module.constraint.data import ConstraintsData, ObjectConstraintsData class BIM_PT_constraints(Panel): diff --git a/src/bonsai/bonsai/bim/module/context/data.py b/src/bonsai/bonsai/bim/module/context/data.py index 9af3aebce7..d91e91863d 100644 --- a/src/bonsai/bonsai/bim/module/context/data.py +++ b/src/bonsai/bonsai/bim/module/context/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/context/operator.py b/src/bonsai/bonsai/bim/module/context/operator.py index bf8ef33aec..808cc55159 100644 --- a/src/bonsai/bonsai/bim/module/context/operator.py +++ b/src/bonsai/bonsai/bim/module/context/operator.py @@ -17,11 +17,8 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool -import blenderbim.core.context as core -import blenderbim.bim.module.context.data -import blenderbim.bim.handler -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.context as core class AddContext(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/context/prop.py b/src/bonsai/bonsai/bim/module/context/prop.py index 7f2e9b980c..783c426e87 100644 --- a/src/bonsai/bonsai/bim/module/context/prop.py +++ b/src/bonsai/bonsai/bim/module/context/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.context.data import ContextData +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.context.data import ContextData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/context/ui.py b/src/bonsai/bonsai/bim/module/context/ui.py index 435aacb17c..80301c8647 100644 --- a/src/bonsai/bonsai/bim/module/context/ui.py +++ b/src/bonsai/bonsai/bim/module/context/ui.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper -import blenderbim.tool as tool -from blenderbim.bim.module.context.data import ContextData +import bonsai.bim.helper +import bonsai.tool as tool +from bonsai.bim.module.context.data import ContextData class BIM_PT_context(bpy.types.Panel): @@ -56,7 +56,7 @@ class BIM_PT_context(bpy.types.Panel): row = box.row(align=True) row.operator("bim.edit_context", icon="CHECKMARK") row.operator("bim.disable_editing_context", icon="CANCEL", text="") - blenderbim.bim.helper.draw_attributes(ifc_context["props"], box) + bonsai.bim.helper.draw_attributes(ifc_context["props"], box) else: row = box.row(align=True) row.label(text=ifc_context["context_type"]) @@ -64,8 +64,8 @@ class BIM_PT_context(bpy.types.Panel): row.operator("bim.remove_context", icon="X", text="").context = ifc_context["id"] row = box.row(align=True) - blenderbim.bim.helper.prop_with_search(row, props, "subcontexts", text="") - blenderbim.bim.helper.prop_with_search(row, props, "target_views", text="") + bonsai.bim.helper.prop_with_search(row, props, "subcontexts", text="") + bonsai.bim.helper.prop_with_search(row, props, "target_views", text="") op = row.operator("bim.add_context", icon="ADD", text="") op.context_type = ifc_context["context_type"] op.context_identifier = props.subcontexts @@ -77,7 +77,7 @@ class BIM_PT_context(bpy.types.Panel): row = box.row(align=True) row.operator("bim.edit_context", icon="CHECKMARK") row.operator("bim.disable_editing_context", icon="CANCEL", text="") - blenderbim.bim.helper.draw_attributes(subcontext["props"], box) + bonsai.bim.helper.draw_attributes(subcontext["props"], box) else: row = box.row(align=True) row.label(text=subcontext["context_type"]) diff --git a/src/bonsai/bonsai/bim/module/cost/data.py b/src/bonsai/bonsai/bim/module/cost/data.py index 0c5955dc2a..2fef675a54 100644 --- a/src/bonsai/bonsai/bim/module/cost/data.py +++ b/src/bonsai/bonsai/bim/module/cost/data.py @@ -22,8 +22,7 @@ import ifcopenshell.util.cost import ifcopenshell.util.date import ifcopenshell.util.element import ifcopenshell.util.unit -import blenderbim.tool as tool -import blenderbim.bim.schema +import bonsai.tool as tool from ifcopenshell.util.doc import get_entity_doc, get_predefined_type_doc from typing import Any diff --git a/src/bonsai/bonsai/bim/module/cost/operator.py b/src/bonsai/bonsai/bim/module/cost/operator.py index 766cba108d..4d3f43de01 100644 --- a/src/bonsai/bonsai/bim/module/cost/operator.py +++ b/src/bonsai/bonsai/bim/module/cost/operator.py @@ -16,16 +16,12 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import os import bpy -import json -import time import ifcopenshell.api -import blenderbim.bim.helper -import blenderbim.tool as tool +import bonsai.tool as tool from bpy_extras.io_utils import ImportHelper -import blenderbim.tool as tool -import blenderbim.core.cost as core +import bonsai.tool as tool +import bonsai.core.cost as core class AddCostSchedule(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/cost/prop.py b/src/bonsai/bonsai/bim/module/cost/prop.py index f201feff5b..d7b9a7100a 100644 --- a/src/bonsai/bonsai/bim/module/cost/prop.py +++ b/src/bonsai/bonsai/bim/module/cost/prop.py @@ -18,11 +18,11 @@ import bpy import ifcopenshell.api -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.classification.data import CostClassificationsData -from blenderbim.bim.module.cost.data import CostSchedulesData, CostItemRatesData, CostItemQuantitiesData -from blenderbim.bim.prop import StrProperty, Attribute +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.classification.data import CostClassificationsData +from bonsai.bim.module.cost.data import CostSchedulesData, CostItemRatesData, CostItemQuantitiesData +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/cost/ui.py b/src/bonsai/bonsai/bim/module/cost/ui.py index 65cac909b8..0233fd4f10 100644 --- a/src/bonsai/bonsai/bim/module/cost/ui.py +++ b/src/bonsai/bonsai/bim/module/cost/ui.py @@ -16,11 +16,11 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.bim.helper -import blenderbim.bim.module.cost.prop as CostProp +import bonsai.bim.helper +import bonsai.bim.module.cost.prop as CostProp from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.cost.data import CostSchedulesData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.cost.data import CostSchedulesData from typing import Any @@ -131,7 +131,7 @@ class BIM_PT_cost_schedules(Panel): row.operator("bim.add_currency", text="", icon="ADD") def draw_editable_cost_schedule_ui(self): - blenderbim.bim.helper.draw_attributes(self.props.cost_schedule_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.cost_schedule_attributes, self.layout) def draw_editable_cost_item_ui(self): row = self.layout.row(align=True) @@ -188,7 +188,7 @@ class BIM_PT_cost_schedules(Panel): self.draw_editable_cost_item_values_ui() def draw_editable_cost_item_attributes_ui(self): - blenderbim.bim.helper.draw_attributes(self.props.cost_item_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.cost_item_attributes, self.layout) def draw_editable_cost_item_quantities_ui(self, cost_item: dict[str, Any]): quantities = CostSchedulesData.data["cost_quantities"] @@ -225,7 +225,7 @@ class BIM_PT_cost_schedules(Panel): op.physical_quantity = quantity["id"] if self.props.active_cost_item_quantity_id and self.props.active_cost_item_quantity_id == quantity["id"]: - blenderbim.bim.helper.draw_attributes(self.props.quantity_attributes, self.layout.box()) + bonsai.bim.helper.draw_attributes(self.props.quantity_attributes, self.layout.box()) def draw_editable_cost_item_values_ui(self): row = self.layout.row(align=True) @@ -245,7 +245,7 @@ class BIM_PT_cost_schedules(Panel): self.draw_readonly_cost_value_ui(row, cost_value) if self.props.cost_value_editing_type == "ATTRIBUTES": - blenderbim.bim.helper.draw_attributes(self.props.cost_value_attributes, self.layout.box()) + bonsai.bim.helper.draw_attributes(self.props.cost_value_attributes, self.layout.box()) def draw_readonly_cost_value_ui(self, layout, cost_value): if cost_value["name"]: diff --git a/src/bonsai/bonsai/bim/module/covering/prop.py b/src/bonsai/bonsai/bim/module/covering/prop.py index 211096aaf0..2a26d88e35 100644 --- a/src/bonsai/bonsai/bim/module/covering/prop.py +++ b/src/bonsai/bonsai/bim/module/covering/prop.py @@ -17,24 +17,7 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute - -# from blenderbim.bim.module.spatial.data import SpatialData from bpy.types import PropertyGroup -from bpy.props import ( - PointerProperty, - StringProperty, - EnumProperty, - BoolProperty, - IntProperty, - FloatProperty, - FloatVectorProperty, - CollectionProperty, -) - -# import blenderbim.tool as tool -# import blenderbim.core.geometry -# import ifcopenshell class BIMCoveringProperties(PropertyGroup): diff --git a/src/bonsai/bonsai/bim/module/covering/workspace.py b/src/bonsai/bonsai/bim/module/covering/workspace.py index 6de597a36e..08c496b756 100644 --- a/src/bonsai/bonsai/bim/module/covering/workspace.py +++ b/src/bonsai/bonsai/bim/module/covering/workspace.py @@ -20,12 +20,10 @@ import os import bpy import ifcopenshell -import blenderbim.tool as tool -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.module.model.data import AuthoringData +import bonsai.tool as tool +from bonsai.bim.helper import prop_with_search +from bonsai.bim.module.model.data import AuthoringData from bpy.types import WorkSpaceTool -from blenderbim.bim.ifc import IfcStore -import blenderbim.bim.handler class CoveringTool(WorkSpaceTool): diff --git a/src/bonsai/bonsai/bim/module/covetool/operator.py b/src/bonsai/bonsai/bim/module/covetool/operator.py index b364edcc26..0bafcafa4f 100644 --- a/src/bonsai/bonsai/bim/module/covetool/operator.py +++ b/src/bonsai/bonsai/bim/module/covetool/operator.py @@ -21,7 +21,7 @@ import json import ifcopenshell import ifcopenshell.util.element from math import degrees, atan2 -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.ifc import IfcStore from .api import Api diff --git a/src/bonsai/bonsai/bim/module/csv/operator.py b/src/bonsai/bonsai/bim/module/csv/operator.py index a8a4a15c08..c837eaeeca 100644 --- a/src/bonsai/bonsai/bim/module/csv/operator.py +++ b/src/bonsai/bonsai/bim/module/csv/operator.py @@ -24,10 +24,10 @@ import logging import tempfile import ifcopenshell import ifcopenshell.util.selector -import blenderbim.tool as tool -import blenderbim.bim.module.drawing.scheduler as scheduler -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.handler import refresh_ui_data +import bonsai.tool as tool +import bonsai.bim.module.drawing.scheduler as scheduler +from bonsai.bim.ifc import IfcStore +from bonsai.bim.handler import refresh_ui_data class AddCsvAttribute(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/csv/prop.py b/src/bonsai/bonsai/bim/module/csv/prop.py index 37b5d88ed6..595b434ca9 100644 --- a/src/bonsai/bonsai/bim/module/csv/prop.py +++ b/src/bonsai/bonsai/bim/module/csv/prop.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, BIMFilterGroup +from bonsai.bim.prop import StrProperty, BIMFilterGroup from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/csv/ui.py b/src/bonsai/bonsai/bim/module/csv/ui.py index 7ada9db66f..0d4d6ef11e 100644 --- a/src/bonsai/bonsai/bim/module/csv/ui.py +++ b/src/bonsai/bonsai/bim/module/csv/ui.py @@ -16,10 +16,10 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.bim.helper +import bonsai.bim.helper from bpy.types import Panel -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.search.data import SearchData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.search.data import SearchData class BIM_PT_ifccsv(Panel): @@ -85,7 +85,7 @@ class BIM_PT_ifccsv(Panel): row.prop(props, "concat_value") layout.use_property_split = False - blenderbim.bim.helper.draw_filter(self.layout, props.filter_groups, SearchData, "csv") + bonsai.bim.helper.draw_filter(self.layout, props.filter_groups, SearchData, "csv") row = layout.row(align=True) op = row.operator("bim.search", text="Select", icon="VIEWZOOM") diff --git a/src/bonsai/bonsai/bim/module/debug/operator.py b/src/bonsai/bonsai/bim/module/debug/operator.py index ec61d4e087..8bc0c21f60 100644 --- a/src/bonsai/bonsai/bim/module/debug/operator.py +++ b/src/bonsai/bonsai/bim/module/debug/operator.py @@ -30,13 +30,13 @@ import ifcopenshell.util.element import ifcopenshell.util.placement import ifcopenshell.util.representation import ifcopenshell.util.unit -import blenderbim.tool as tool -import blenderbim.core.debug as core -import blenderbim.bim.handler -import blenderbim.bim.import_ifc as import_ifc +import bonsai.tool as tool +import bonsai.core.debug as core +import bonsai.bim.handler +import bonsai.bim.import_ifc as import_ifc from pathlib import Path -from blenderbim import get_debug_info, format_debug_info -from blenderbim.bim.ifc import IfcStore +from bonsai import get_debug_info, format_debug_info +from bonsai.bim.ifc import IfcStore class CopyDebugInformation(bpy.types.Operator): @@ -99,7 +99,7 @@ class ConvertToBlender(bpy.types.Operator): context.scene.BIMProperties.ifc_file = "" context.scene.BIMDebugProperties.attributes.clear() IfcStore.purge() - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} @@ -408,7 +408,7 @@ class ParseExpress(bpy.types.Operator): def execute(self, context): core.parse_express(tool.Debug, context.scene.BIMDebugProperties.express_file) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} @@ -609,8 +609,6 @@ class PipInstall(bpy.types.Operator): name: bpy.props.StringProperty() def execute(self, context): - import blenderbim.bim - blender_path = Path(bpy.app.binary_path).parent target = next( path for p in sys.path if (path := Path(p)).name == "site-packages" and path.is_relative_to(blender_path) diff --git a/src/bonsai/bonsai/bim/module/debug/prop.py b/src/bonsai/bonsai/bim/module/debug/prop.py index 69c9546dea..01076ccde3 100644 --- a/src/bonsai/bonsai/bim/module/debug/prop.py +++ b/src/bonsai/bonsai/bim/module/debug/prop.py @@ -16,7 +16,7 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/demo/data.py b/src/bonsai/bonsai/bim/module/demo/data.py index 118e4ab981..008089d3d6 100644 --- a/src/bonsai/bonsai/bim/module/demo/data.py +++ b/src/bonsai/bonsai/bim/module/demo/data.py @@ -29,7 +29,7 @@ # of "fetching data" and "displaying data" is a common concept that makes UI # code much simpler, more efficient, and less error-prone to refresh data. -import blenderbim.tool as tool +import bonsai.tool as tool # All data must have a refresh function. The refresh function simply sets all diff --git a/src/bonsai/bonsai/bim/module/demo/operator.py b/src/bonsai/bonsai/bim/module/demo/operator.py index e7fed1314d..dcc54a2a7e 100644 --- a/src/bonsai/bonsai/bim/module/demo/operator.py +++ b/src/bonsai/bonsai/bim/module/demo/operator.py @@ -28,9 +28,8 @@ # "Operators", since they correlate to a single user operation. import bpy -import blenderbim.tool as tool -import blenderbim.core.demo as core -import blenderbim.bim.handler +import bonsai.tool as tool +import bonsai.core.demo as core # Each button correlates to a class like the one below. In this case, we're diff --git a/src/bonsai/bonsai/bim/module/demo/ui.py b/src/bonsai/bonsai/bim/module/demo/ui.py index 7bb1467c2a..d401a8aa35 100644 --- a/src/bonsai/bonsai/bim/module/demo/ui.py +++ b/src/bonsai/bonsai/bim/module/demo/ui.py @@ -27,7 +27,7 @@ # panels, buttons, labels, and input fields are laid out. import bpy -from blenderbim.bim.module.demo.data import DemoData +from bonsai.bim.module.demo.data import DemoData # Every panel in the interface correlates to one of these classes. If you enable diff --git a/src/bonsai/bonsai/bim/module/diff/data.py b/src/bonsai/bonsai/bim/module/diff/data.py index 1a396d2cd4..c8fda6850c 100644 --- a/src/bonsai/bonsai/bim/module/diff/data.py +++ b/src/bonsai/bonsai/bim/module/diff/data.py @@ -18,7 +18,7 @@ import bpy import json -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/diff/operator.py b/src/bonsai/bonsai/bim/module/diff/operator.py index 35a6c9d97f..ead5dd6e04 100644 --- a/src/bonsai/bonsai/bim/module/diff/operator.py +++ b/src/bonsai/bonsai/bim/module/diff/operator.py @@ -21,10 +21,10 @@ import json import logging import ifcdiff import ifcopenshell -import blenderbim.bim.handler -import blenderbim.bim.import_ifc -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.bim.handler +import bonsai.bim.import_ifc +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore class SelectDiffJsonFile(bpy.types.Operator): @@ -174,7 +174,7 @@ class ExecuteIfcDiff(bpy.types.Operator): self.load_changed_elements(ifc_diff) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} def load_changed_elements(self, ifc_diff: ifcdiff.IfcDiff): @@ -183,8 +183,8 @@ class ExecuteIfcDiff(bpy.types.Operator): active_ifc = tool.Ifc.get() logger = logging.getLogger("ImportIFC") - ifc_import_settings = blenderbim.bim.import_ifc.IfcImportSettings.factory(bpy.context, None, logger) - ifc_importer = blenderbim.bim.import_ifc.IfcImporter(ifc_import_settings) + ifc_import_settings = bonsai.bim.import_ifc.IfcImportSettings.factory(bpy.context, None, logger) + ifc_importer = bonsai.bim.import_ifc.IfcImporter(ifc_import_settings) if self.props.active_file == "NEW": tool.Ifc.set(ifc_diff.old) diff --git a/src/bonsai/bonsai/bim/module/diff/prop.py b/src/bonsai/bonsai/bim/module/diff/prop.py index 5461562e02..3f09b39900 100644 --- a/src/bonsai/bonsai/bim/module/diff/prop.py +++ b/src/bonsai/bonsai/bim/module/diff/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, BIMFilterGroup -from blenderbim.bim.module.diff.data import DiffData +from bonsai.bim.prop import StrProperty, BIMFilterGroup +from bonsai.bim.module.diff.data import DiffData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/diff/ui.py b/src/bonsai/bonsai/bim/module/diff/ui.py index 707ac13436..b147f884d1 100644 --- a/src/bonsai/bonsai/bim/module/diff/ui.py +++ b/src/bonsai/bonsai/bim/module/diff/ui.py @@ -17,10 +17,10 @@ # along with Bonsai. If not, see . from bpy.types import Panel -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.diff.data import DiffData -import blenderbim.bim.helper -import blenderbim.tool as tool +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.diff.data import DiffData +import bonsai.bim.helper +import bonsai.tool as tool class BIM_PT_diff(Panel): @@ -93,7 +93,7 @@ class BIM_PT_diff(Panel): remove.collection = "diff_relationships" remove.index = index - blenderbim.bim.helper.draw_filter(self.layout, props.filter_groups, DiffData, "diff") + bonsai.bim.helper.draw_filter(self.layout, props.filter_groups, DiffData, "diff") row = layout.row() row.operator("bim.execute_ifc_diff") diff --git a/src/bonsai/bonsai/bim/module/document/data.py b/src/bonsai/bonsai/bim/module/document/data.py index bc5f847e75..0a75605b5c 100644 --- a/src/bonsai/bonsai/bim/module/document/data.py +++ b/src/bonsai/bonsai/bim/module/document/data.py @@ -20,7 +20,7 @@ import os import bpy import ifcopenshell import ifcopenshell.util.schema -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/document/operator.py b/src/bonsai/bonsai/bim/module/document/operator.py index d721f4d5e9..662780c1a1 100644 --- a/src/bonsai/bonsai/bim/module/document/operator.py +++ b/src/bonsai/bonsai/bim/module/document/operator.py @@ -20,9 +20,9 @@ import bpy import json import ifcopenshell.api import ifcopenshell.util.attribute -import blenderbim.tool as tool -import blenderbim.core.document as core -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.document as core +from bonsai.bim.ifc import IfcStore class LoadProjectDocuments(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/document/prop.py b/src/bonsai/bonsai/bim/module/document/prop.py index 560f145124..2424b504f5 100644 --- a/src/bonsai/bonsai/bim/module/document/prop.py +++ b/src/bonsai/bonsai/bim/module/document/prop.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/document/ui.py b/src/bonsai/bonsai/bim/module/document/ui.py index 33eb73e177..573403f249 100644 --- a/src/bonsai/bonsai/bim/module/document/ui.py +++ b/src/bonsai/bonsai/bim/module/document/ui.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import draw_attributes -from blenderbim.bim.module.document.data import DocumentData, ObjectDocumentData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import draw_attributes +from bonsai.bim.module.document.data import DocumentData, ObjectDocumentData class BIM_PT_documents(Panel): diff --git a/src/bonsai/bonsai/bim/module/drawing/annotation.py b/src/bonsai/bonsai/bim/module/drawing/annotation.py index 6c5bda6b5a..b78fac0170 100644 --- a/src/bonsai/bonsai/bim/module/drawing/annotation.py +++ b/src/bonsai/bonsai/bim/module/drawing/annotation.py @@ -20,7 +20,7 @@ import os import bpy import math import bmesh -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell.util.element from mathutils import Vector, Matrix diff --git a/src/bonsai/bonsai/bim/module/drawing/data.py b/src/bonsai/bonsai/bim/module/drawing/data.py index b2516e6e38..37628451d9 100644 --- a/src/bonsai/bonsai/bim/module/drawing/data.py +++ b/src/bonsai/bonsai/bim/module/drawing/data.py @@ -22,7 +22,7 @@ import json import ifcopenshell.util.element import ifcopenshell.util.representation import ifcopenshell.util.unit -import blenderbim.tool as tool +import bonsai.tool as tool from pathlib import Path from typing import Any, Union diff --git a/src/bonsai/bonsai/bim/module/drawing/decoration.py b/src/bonsai/bonsai/bim/module/drawing/decoration.py index 9ef163d2fc..c209b22c2f 100644 --- a/src/bonsai/bonsai/bim/module/drawing/decoration.py +++ b/src/bonsai/bonsai/bim/module/drawing/decoration.py @@ -26,16 +26,16 @@ import shapely import ifcopenshell import ifcopenshell.util.element import ifcopenshell.util.unit -import blenderbim.tool as tool -import blenderbim.bim.module.drawing.helper as helper +import bonsai.tool as tool +import bonsai.bim.module.drawing.helper as helper from math import pi, sin, cos, tan, acos, atan, degrees, radians, ceil from bpy.types import SpaceView3D from mathutils import Vector, Matrix from bpy_extras.view3d_utils import location_3d_to_region_2d from gpu_extras.batch import batch_for_shader -from blenderbim.bim.module.drawing.data import DecoratorData, DrawingsData -from blenderbim.bim.module.drawing.shaders import add_verts_sequence, add_offsets -from blenderbim.bim.module.drawing.helper import format_distance +from bonsai.bim.module.drawing.data import DecoratorData, DrawingsData +from bonsai.bim.module.drawing.shaders import add_verts_sequence, add_offsets +from bonsai.bim.module.drawing.helper import format_distance from timeit import default_timer as timer from functools import lru_cache from typing import Optional, Iterator, Type, Union diff --git a/src/bonsai/bonsai/bim/module/drawing/gizmos.py b/src/bonsai/bonsai/bim/module/drawing/gizmos.py index 4484397950..8e4f9bb97e 100644 --- a/src/bonsai/bonsai/bim/module/drawing/gizmos.py +++ b/src/bonsai/bonsai/bim/module/drawing/gizmos.py @@ -23,7 +23,7 @@ from bpy import types from mathutils import Vector from mathutils import geometry from bpy_extras import view3d_utils -from blenderbim.bim.module.drawing.shaders import DotsGizmoShader, ExtrusionGuidesShader +from bonsai.bim.module.drawing.shaders import DotsGizmoShader, ExtrusionGuidesShader from ifcopenshell.util.unit import si_conversions diff --git a/src/bonsai/bonsai/bim/module/drawing/handler.py b/src/bonsai/bonsai/bim/module/drawing/handler.py index 373fcc788d..abfc8bb261 100644 --- a/src/bonsai/bonsai/bim/module/drawing/handler.py +++ b/src/bonsai/bonsai/bim/module/drawing/handler.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.module.drawing.decoration as decoration -import blenderbim.tool as tool +import bonsai.bim.module.drawing.decoration as decoration +import bonsai.tool as tool from bpy.app.handlers import persistent diff --git a/src/bonsai/bonsai/bim/module/drawing/helper.py b/src/bonsai/bonsai/bim/module/drawing/helper.py index 544f5c90d8..ee9585c98f 100644 --- a/src/bonsai/bonsai/bim/module/drawing/helper.py +++ b/src/bonsai/bonsai/bim/module/drawing/helper.py @@ -19,7 +19,7 @@ import bpy import math import mathutils.geometry -import blenderbim.tool as tool +import bonsai.tool as tool from mathutils import Vector # Code taken and updated from https://blenderartists.org/t/detecting-intersection-of-bounding-boxes/457520/2 diff --git a/src/bonsai/bonsai/bim/module/drawing/operator.py b/src/bonsai/bonsai/bim/module/drawing/operator.py index 105f2437a5..72014d838c 100644 --- a/src/bonsai/bonsai/bim/module/drawing/operator.py +++ b/src/bonsai/bonsai/bim/module/drawing/operator.py @@ -35,26 +35,25 @@ import ifcopenshell.geom import ifcopenshell.util.selector import ifcopenshell.util.representation import ifcopenshell.util.element -import blenderbim.bim.schema -import blenderbim.bim.helper -import blenderbim.bim.handler -import blenderbim.tool as tool -import blenderbim.core.geometry -import blenderbim.core.drawing as core -import blenderbim.bim.module.drawing.svgwriter as svgwriter -import blenderbim.bim.module.drawing.annotation as annotation -import blenderbim.bim.module.drawing.sheeter as sheeter -import blenderbim.bim.module.drawing.scheduler as scheduler -import blenderbim.bim.module.drawing.helper as helper -import blenderbim.bim.export_ifc -from blenderbim.bim.module.drawing.decoration import CutDecorator -from blenderbim.bim.module.drawing.data import DecoratorData, DrawingsData +import bonsai.bim.helper +import bonsai.bim.handler +import bonsai.tool as tool +import bonsai.core.geometry +import bonsai.core.drawing as core +import bonsai.bim.module.drawing.svgwriter as svgwriter +import bonsai.bim.module.drawing.annotation as annotation +import bonsai.bim.module.drawing.sheeter as sheeter +import bonsai.bim.module.drawing.scheduler as scheduler +import bonsai.bim.module.drawing.helper as helper +import bonsai.bim.export_ifc +from bonsai.bim.module.drawing.decoration import CutDecorator +from bonsai.bim.module.drawing.data import DecoratorData, DrawingsData from typing import NamedTuple, List, Union, Optional, Literal from lxml import etree from mathutils import Vector, Color, Matrix from timeit import default_timer as timer -from blenderbim.bim.module.drawing.prop import RasterStyleProperty, RASTER_STYLE_PROPERTIES_EXCLUDE -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.module.drawing.prop import RasterStyleProperty, RASTER_STYLE_PROPERTIES_EXCLUDE +from bonsai.bim.ifc import IfcStore from pathlib import Path from bpy_extras.image_utils import load_image @@ -499,7 +498,7 @@ class CreateDrawing(bpy.types.Operator): if self.sync and self.drawing_index == 0: with profile("sync"): # All very hackish whilst prototyping - exporter = blenderbim.bim.export_ifc.IfcExporter(None) + exporter = bonsai.bim.export_ifc.IfcExporter(None) exporter.file = tool.Ifc.get() invalidated_elements = exporter.sync_all_objects() invalidated_elements += exporter.sync_edited_objects() @@ -1490,7 +1489,7 @@ class ActivateModel(bpy.types.Operator): if model: current_representation = tool.Geometry.get_active_representation(obj) if current_representation != model: - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -1505,7 +1504,7 @@ class ActivateModel(bpy.types.Operator): obj.hide_set(hide_status) tool.Blender.update_viewport() - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} @@ -1844,7 +1843,7 @@ class SaveDrawingStylesData(bpy.types.Operator, tool.Ifc.Operator): ifcopenshell.api.run( "pset.edit_pset", ifc_file, pset=pset, properties={"CurrentShadingStyle": new_style_name} ) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} @@ -1873,7 +1872,7 @@ class ActivateDrawingStyle(bpy.types.Operator, tool.Ifc.Operator): ifcopenshell.api.run( "pset.edit_pset", ifc_file, pset=pset, properties={"CurrentShadingStyle": self.drawing_style.name} ) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} def set_raster_style(self, context): @@ -2239,7 +2238,7 @@ class EditTextPopup(bpy.types.Operator): # skip BoxAlignment since we're going to format it ourselves attributes = [a for a in literal_props.attributes if a.name != "BoxAlignment"] - blenderbim.bim.helper.draw_attributes(attributes, box, popup_active_attribute=attributes[0]) + bonsai.bim.helper.draw_attributes(attributes, box, popup_active_attribute=attributes[0]) row = box.row(align=True) cols = [row.column(align=True) for i in range(3)] @@ -2323,7 +2322,7 @@ class AddTextLiteral(bpy.types.Operator): "Path": "RIGHT", "BoxAlignment": "bottom_left", } - # emulates `blenderbim.bim.helper.import_attributes2(ifc_literal, literal_props.attributes)` + # emulates `bonsai.bim.helper.import_attributes2(ifc_literal, literal_props.attributes)` for attr_name in literal_attr_values: attr = literal_attributes.add() attr.name = attr_name diff --git a/src/bonsai/bonsai/bim/module/drawing/prop.py b/src/bonsai/bonsai/bim/module/drawing/prop.py index f3c706b6af..a794ae720f 100644 --- a/src/bonsai/bonsai/bim/module/drawing/prop.py +++ b/src/bonsai/bonsai/bim/module/drawing/prop.py @@ -23,15 +23,15 @@ import enum import ifcopenshell import ifcopenshell.api import ifcopenshell.util.element -import blenderbim.tool as tool -import blenderbim.core.drawing as core -import blenderbim.bim.module.drawing.annotation as annotation -import blenderbim.bim.module.drawing.decoration as decoration -from blenderbim.bim.prop import BIMFilterGroup -from blenderbim.bim.module.drawing.data import DrawingsData, DecoratorData, SheetsData, AnnotationData -from blenderbim.bim.module.drawing.data import refresh as refresh_drawing_data +import bonsai.tool as tool +import bonsai.core.drawing as core +import bonsai.bim.module.drawing.annotation as annotation +import bonsai.bim.module.drawing.decoration as decoration +from bonsai.bim.prop import BIMFilterGroup +from bonsai.bim.module.drawing.data import DrawingsData, DecoratorData, SheetsData, AnnotationData +from bonsai.bim.module.drawing.data import refresh as refresh_drawing_data from pathlib import Path -from blenderbim.bim.prop import Attribute, StrProperty +from bonsai.bim.prop import Attribute, StrProperty from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/drawing/scheduler.py b/src/bonsai/bonsai/bim/module/drawing/scheduler.py index be1bdd9362..2e7bc9034c 100644 --- a/src/bonsai/bonsai/bim/module/drawing/scheduler.py +++ b/src/bonsai/bonsai/bim/module/drawing/scheduler.py @@ -23,14 +23,14 @@ import string import svgwrite import openpyxl -from blenderbim.bim.module.drawing.svgwriter import SvgWriter +from bonsai.bim.module.drawing.svgwriter import SvgWriter from odf.opendocument import load as load_ods from odf.table import Table, TableRow, TableColumn, TableCell from odf.text import P from odf.style import Style from textwrap import wrap from pathlib import Path -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.ifc import IfcStore DEBUG = False diff --git a/src/bonsai/bonsai/bim/module/drawing/sheeter.py b/src/bonsai/bonsai/bim/module/drawing/sheeter.py index d951ad4eff..585ff38b10 100644 --- a/src/bonsai/bonsai/bim/module/drawing/sheeter.py +++ b/src/bonsai/bonsai/bim/module/drawing/sheeter.py @@ -24,7 +24,7 @@ import ntpath import pystache import urllib.parse import xml.etree.ElementTree as ET -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell.util.geolocation from xml.dom import minidom from mathutils import Vector diff --git a/src/bonsai/bonsai/bim/module/drawing/svgwriter.py b/src/bonsai/bonsai/bim/module/drawing/svgwriter.py index bb662455c0..fd40880c84 100644 --- a/src/bonsai/bonsai/bim/module/drawing/svgwriter.py +++ b/src/bonsai/bonsai/bim/module/drawing/svgwriter.py @@ -30,13 +30,13 @@ import ifcopenshell.util.element import ifcopenshell.util.representation import ifcopenshell.util.selector import ifcopenshell.util.unit -import blenderbim.tool as tool -import blenderbim.bim.module.drawing.helper as helper -import blenderbim.bim.module.drawing.annotation as annotation -from blenderbim.bim.module.drawing.data import DrawingsData +import bonsai.tool as tool +import bonsai.bim.module.drawing.helper as helper +import bonsai.bim.module.drawing.annotation as annotation +from bonsai.bim.module.drawing.data import DrawingsData -from blenderbim.bim.module.drawing.data import DecoratorData -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.module.drawing.data import DecoratorData +from bonsai.bim.ifc import IfcStore from math import pi, ceil, atan, degrees, acos from mathutils import geometry, Vector diff --git a/src/bonsai/bonsai/bim/module/drawing/ui.py b/src/bonsai/bonsai/bim/module/drawing/ui.py index dd427dcd20..47a6f67b70 100644 --- a/src/bonsai/bonsai/bim/module/drawing/ui.py +++ b/src/bonsai/bonsai/bim/module/drawing/ui.py @@ -17,10 +17,10 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper -import blenderbim.tool as tool +import bonsai.bim.helper +import bonsai.tool as tool from bpy.types import Panel -from blenderbim.bim.module.drawing.data import ( +from bonsai.bim.module.drawing.data import ( ProductAssignmentsData, SheetsData, DocumentsData, @@ -119,7 +119,7 @@ class BIM_PT_element_filters(Panel): props = context.scene.camera.data.BIMCameraProperties if props.filter_mode == "INCLUDE": - blenderbim.bim.helper.draw_filter( + bonsai.bim.helper.draw_filter( self.layout, props.include_filter_groups, ElementFiltersData, "drawing_include" ) row = self.layout.row(align=True) @@ -128,7 +128,7 @@ class BIM_PT_element_filters(Panel): ) row.operator("bim.enable_editing_element_filter", icon="CANCEL", text="").filter_mode = "NONE" elif props.filter_mode == "EXCLUDE": - blenderbim.bim.helper.draw_filter( + bonsai.bim.helper.draw_filter( self.layout, props.exclude_filter_groups, ElementFiltersData, "drawing_exclude" ) row = self.layout.row(align=True) @@ -545,7 +545,7 @@ class BIM_PT_text(Panel): # skip BoxAlignment since we're going to format it ourselves attributes = [a for a in literal_props.attributes if a.name != "BoxAlignment"] - blenderbim.bim.helper.draw_attributes(attributes, box) + bonsai.bim.helper.draw_attributes(attributes, box) row = box.row(align=True) cols = [row.column(align=True) for i in range(3)] diff --git a/src/bonsai/bonsai/bim/module/drawing/workspace.py b/src/bonsai/bonsai/bim/module/drawing/workspace.py index 3d1217c418..f9987618ea 100644 --- a/src/bonsai/bonsai/bim/module/drawing/workspace.py +++ b/src/bonsai/bonsai/bim/module/drawing/workspace.py @@ -19,15 +19,12 @@ import os import bpy -import blenderbim.core.type -import blenderbim.tool as tool -from blenderbim.bim.helper import prop_with_search +import bonsai.core.type +import bonsai.tool as tool +from bonsai.bim.module.drawing.data import DecoratorData, AnnotationData +from bonsai.bim.helper import prop_with_search from bpy.types import WorkSpaceTool -from blenderbim.bim.module.drawing.data import DecoratorData, AnnotationData -from blenderbim.bim.ifc import IfcStore -import blenderbim.bim.handler - class LaunchAnnotationTypeManager(bpy.types.Operator): bl_idname = "bim.launch_annotation_type_manager" @@ -171,7 +168,7 @@ def create_annotation_occurrence(context): ifc_representation_class=tool.Drawing.get_ifc_representation_class(object_type), ) - blenderbim.core.type.assign_type(tool.Ifc, tool.Type, element=element, type=relating_type) + bonsai.core.type.assign_type(tool.Ifc, tool.Type, element=element, type=relating_type) tool.Ifc.run("group.assign_group", group=tool.Drawing.get_drawing_group(drawing), products=[element]) tool.Collector.assign(obj) diff --git a/src/bonsai/bonsai/bim/module/fm/operator.py b/src/bonsai/bonsai/bim/module/fm/operator.py index e6d5ac85d0..cd9a8559f0 100644 --- a/src/bonsai/bonsai/bim/module/fm/operator.py +++ b/src/bonsai/bonsai/bim/module/fm/operator.py @@ -23,7 +23,7 @@ import ifcfm import logging import tempfile import ifcopenshell -import blenderbim.tool as tool +import bonsai.tool as tool class ExecuteIfcFM(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/fm/prop.py b/src/bonsai/bonsai/bim/module/fm/prop.py index 9cc9339215..604dfd9f81 100644 --- a/src/bonsai/bonsai/bim/module/fm/prop.py +++ b/src/bonsai/bonsai/bim/module/fm/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.module.fm.data import FMData -from blenderbim.bim.prop import MultipleFileSelect, StrProperty +from bonsai.bim.module.fm.data import FMData +from bonsai.bim.prop import MultipleFileSelect, StrProperty from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/fm/ui.py b/src/bonsai/bonsai/bim/module/fm/ui.py index d6faec61b6..1e76ec61c3 100644 --- a/src/bonsai/bonsai/bim/module/fm/ui.py +++ b/src/bonsai/bonsai/bim/module/fm/ui.py @@ -16,10 +16,10 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import Panel -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.fm.data import FMData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.fm.data import FMData class BIM_PT_fm(Panel): diff --git a/src/bonsai/bonsai/bim/module/geometry/data.py b/src/bonsai/bonsai/bim/module/geometry/data.py index 869f301aee..2f0c68f770 100644 --- a/src/bonsai/bonsai/bim/module/geometry/data.py +++ b/src/bonsai/bonsai/bim/module/geometry/data.py @@ -22,7 +22,7 @@ import ifcopenshell.util.geolocation import ifcopenshell.util.placement import ifcopenshell.util.schema import ifcopenshell.util.unit -import blenderbim.tool as tool +import bonsai.tool as tool from mathutils import Vector diff --git a/src/bonsai/bonsai/bim/module/geometry/helper.py b/src/bonsai/bonsai/bim/module/geometry/helper.py index 636ae58cd2..718cd88039 100644 --- a/src/bonsai/bonsai/bim/module/geometry/helper.py +++ b/src/bonsai/bonsai/bim/module/geometry/helper.py @@ -21,7 +21,7 @@ import bmesh import mathutils import ifcopenshell import ifcopenshell.util.unit -import blenderbim.tool as tool +import bonsai.tool as tool from math import pi, pow from mathutils import Vector, Matrix, geometry from typing import Union diff --git a/src/bonsai/bonsai/bim/module/geometry/operator.py b/src/bonsai/bonsai/bim/module/geometry/operator.py index 2771f12c25..a4d54ab9c3 100644 --- a/src/bonsai/bonsai/bim/module/geometry/operator.py +++ b/src/bonsai/bonsai/bim/module/geometry/operator.py @@ -28,17 +28,17 @@ import ifcopenshell.util.element import ifcopenshell.util.representation import ifcopenshell.util.placement import ifcopenshell.api -import blenderbim.core.geometry -import blenderbim.core.geometry as core -import blenderbim.core.aggregate -import blenderbim.core.style -import blenderbim.core.root -import blenderbim.core.drawing -import blenderbim.tool as tool -import blenderbim.bim.handler +import bonsai.core.geometry +import bonsai.core.geometry as core +import bonsai.core.aggregate +import bonsai.core.style +import bonsai.core.root +import bonsai.core.drawing +import bonsai.tool as tool +import bonsai.bim.handler from mathutils import Vector, Matrix from time import time -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.ifc import IfcStore from ifcopenshell.util.shape_builder import ShapeBuilder from typing import Any @@ -89,7 +89,7 @@ class OverrideMeshSeparate(bpy.types.Operator, tool.Ifc.Operator): if new_obj == obj: continue # This is not very efficient, it needlessly copies the representations first. - blenderbim.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=new_obj) + bonsai.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=new_obj) new_objs.append(new_obj) for new_obj in new_objs: bpy.ops.bim.update_representation(obj=new_obj.name) @@ -874,7 +874,7 @@ class OverrideDuplicateMove(bpy.types.Operator): # Prior to duplicating, sync the object placement to make decomposition recreation more stable. if tool.Ifc.is_moved(obj): - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) new_obj = obj.copy() temp_data = None @@ -897,7 +897,7 @@ class OverrideDuplicateMove(bpy.types.Operator): # clear object's collection so it will be able to have it's own new_obj.BIMObjectProperties.collection = None # copy the actual class - new = blenderbim.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=new_obj) + new = bonsai.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=new_obj) # clean up the orphaned mesh with ifc id of the original object to avoid confusion # IfcGridAxis keeps the same mesh data (it's pointing to ifc id 0, so it's not a problem) @@ -934,7 +934,7 @@ class OverrideDuplicateMove(bpy.types.Operator): # Recreate decompositions tool.Root.recreate_decompositions(decomposition_relationships, old_to_new) OverrideDuplicateMove.remove_linked_aggregate_data(old_to_new) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return old_to_new @staticmethod @@ -1201,7 +1201,7 @@ class DuplicateMoveLinkedAggregate(bpy.types.Operator): if location_from_3d_cursor: get_location_from_3d_cursor(old_to_new, selected_element) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return old_to_new @@ -1432,7 +1432,7 @@ class RefreshLinkedAggregate(bpy.types.Operator): new_aggregate = ifcopenshell.util.element.get_aggregate(new[0]) if not new_aggregate: - blenderbim.core.aggregate.assign_object( + bonsai.core.aggregate.assign_object( tool.Ifc, tool.Aggregate, tool.Collector, @@ -1444,7 +1444,7 @@ class RefreshLinkedAggregate(bpy.types.Operator): new_obj = tool.Ifc.get_object(new[0]) set_original_name(new_obj, original_names) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() operator_time = time() - refresh_start_time if operator_time > 10: @@ -1922,7 +1922,7 @@ def poll_editing_representaiton_item_style(cls, context): if shape_aspect == "": return True - from blenderbim.bim.module.material.data import ObjectMaterialData + from bonsai.bim.module.material.data import ObjectMaterialData if not ObjectMaterialData.is_loaded: ObjectMaterialData.load() diff --git a/src/bonsai/bonsai/bim/module/geometry/prop.py b/src/bonsai/bonsai/bim/module/geometry/prop.py index 52ae277152..c3db9c4083 100644 --- a/src/bonsai/bonsai/bim/module/geometry/prop.py +++ b/src/bonsai/bonsai/bim/module/geometry/prop.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.geometry.data import RepresentationsData, ViewportData +import bonsai.tool as tool +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.geometry.data import RepresentationsData, ViewportData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, @@ -56,7 +56,7 @@ def get_mode(self, context): def get_styles(self, context): # postponed import to avoid circular import - from blenderbim.bim.module.material.data import MaterialsData + from bonsai.bim.module.material.data import MaterialsData if not MaterialsData.is_loaded: MaterialsData.load() @@ -70,7 +70,7 @@ def get_shape_aspects(self, context): def get_material_constituents(self, context, edit_text): - from blenderbim.bim.module.material.data import ObjectMaterialData + from bonsai.bim.module.material.data import ObjectMaterialData if not ObjectMaterialData.is_loaded: ObjectMaterialData.load() diff --git a/src/bonsai/bonsai/bim/module/geometry/ui.py b/src/bonsai/bonsai/bim/module/geometry/ui.py index e7273d944c..948e1e1e00 100644 --- a/src/bonsai/bonsai/bim/module/geometry/ui.py +++ b/src/bonsai/bonsai/bim/module/geometry/ui.py @@ -17,19 +17,19 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim -import blenderbim.tool as tool +import bonsai.bim +import bonsai.tool as tool from bpy.types import Panel, Menu, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.module.geometry.data import ( +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import prop_with_search +from bonsai.bim.module.geometry.data import ( RepresentationsData, RepresentationItemsData, ConnectionsData, PlacementData, DerivedCoordinatesData, ) -from blenderbim.bim.module.layer.data import LayersData +from bonsai.bim.module.layer.data import LayersData def mode_menu(self, context): @@ -38,7 +38,7 @@ def mode_menu(self, context): row = self.layout.row(align=True) if context.scene.BIMGeometryProperties.mode == "EDIT": row.operator("bim.override_mode_set_object", icon="CANCEL", text="Discard Changes").should_save = False - row.prop(context.scene.BIMGeometryProperties, "mode", text="", icon_value=blenderbim.bim.icons["IFC"].icon_id) + row.prop(context.scene.BIMGeometryProperties, "mode", text="", icon_value=bonsai.bim.icons["IFC"].icon_id) def object_menu(self, context): @@ -69,7 +69,7 @@ class BIM_MT_hotkey_separate(Menu): bl_label = "Separate" def draw(self, context): - self.layout.label(text="IFC Separate", icon_value=blenderbim.bim.icons["IFC"].icon_id) + self.layout.label(text="IFC Separate", icon_value=bonsai.bim.icons["IFC"].icon_id) self.layout.operator("bim.override_mesh_separate", text="Selection").type = "SELECTED" self.layout.operator("bim.override_mesh_separate", text="By Material").type = "MATERIAL" self.layout.operator("bim.override_mesh_separate", text="By Loose Parts").type = "LOOSE" diff --git a/src/bonsai/bonsai/bim/module/georeference/data.py b/src/bonsai/bonsai/bim/module/georeference/data.py index 9e1758798f..314de226ff 100644 --- a/src/bonsai/bonsai/bim/module/georeference/data.py +++ b/src/bonsai/bonsai/bim/module/georeference/data.py @@ -19,7 +19,7 @@ import bpy import numpy as np -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell.util.element import ifcopenshell.util.geolocation import ifcopenshell.util.schema diff --git a/src/bonsai/bonsai/bim/module/georeference/decorator.py b/src/bonsai/bonsai/bim/module/georeference/decorator.py index 0ef8d99811..df35628753 100644 --- a/src/bonsai/bonsai/bim/module/georeference/decorator.py +++ b/src/bonsai/bonsai/bim/module/georeference/decorator.py @@ -21,13 +21,13 @@ import blf import gpu import bmesh import ifcopenshell -import blenderbim.tool as tool +import bonsai.tool as tool from math import radians from bpy.types import SpaceView3D from mathutils import Vector, Matrix from gpu_extras.batch import batch_for_shader from bpy_extras.view3d_utils import location_3d_to_region_2d -from blenderbim.bim.module.georeference.data import GeoreferenceData +from bonsai.bim.module.georeference.data import GeoreferenceData class GeoreferenceDecorator: diff --git a/src/bonsai/bonsai/bim/module/georeference/operator.py b/src/bonsai/bonsai/bim/module/georeference/operator.py index f611a498b2..94307113e0 100644 --- a/src/bonsai/bonsai/bim/module/georeference/operator.py +++ b/src/bonsai/bonsai/bim/module/georeference/operator.py @@ -18,9 +18,9 @@ import bpy -import blenderbim.tool as tool -import blenderbim.core.georeference as core -from blenderbim.bim.module.georeference.decorator import GeoreferenceDecorator +import bonsai.tool as tool +import bonsai.core.georeference as core +from bonsai.bim.module.georeference.decorator import GeoreferenceDecorator class AddGeoreferencing(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/georeference/prop.py b/src/bonsai/bonsai/bim/module/georeference/prop.py index 1bb5766752..e0b3dce9da 100644 --- a/src/bonsai/bonsai/bim/module/georeference/prop.py +++ b/src/bonsai/bonsai/bim/module/georeference/prop.py @@ -18,8 +18,8 @@ import bpy import ifcopenshell.util.geolocation -import blenderbim.tool as tool -from blenderbim.bim.prop import Attribute +import bonsai.tool as tool +from bonsai.bim.prop import Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, @@ -31,8 +31,8 @@ from bpy.props import ( FloatVectorProperty, CollectionProperty, ) -from blenderbim.bim.module.georeference.data import GeoreferenceData -from blenderbim.bim.module.georeference.decorator import GeoreferenceDecorator +from bonsai.bim.module.georeference.data import GeoreferenceData +from bonsai.bim.module.georeference.decorator import GeoreferenceDecorator def get_coordinate_operation_class(self, context): diff --git a/src/bonsai/bonsai/bim/module/georeference/ui.py b/src/bonsai/bonsai/bim/module/georeference/ui.py index bba36919a8..6a30c56b80 100644 --- a/src/bonsai/bonsai/bim/module/georeference/ui.py +++ b/src/bonsai/bonsai/bim/module/georeference/ui.py @@ -16,10 +16,10 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import Panel -from blenderbim.bim.helper import draw_attributes, draw_attribute -from blenderbim.bim.module.georeference.data import GeoreferenceData +from bonsai.bim.helper import draw_attributes, draw_attribute +from bonsai.bim.module.georeference.data import GeoreferenceData class BIM_PT_gis(Panel): diff --git a/src/bonsai/bonsai/bim/module/gis/prop.py b/src/bonsai/bonsai/bim/module/gis/prop.py index 122e9ccd6d..0d0fd74d6e 100644 --- a/src/bonsai/bonsai/bim/module/gis/prop.py +++ b/src/bonsai/bonsai/bim/module/gis/prop.py @@ -18,7 +18,7 @@ from bpy.types import PropertyGroup from bpy.props import StringProperty, BoolProperty, EnumProperty, CollectionProperty -from blenderbim.bim.prop import StrProperty +from bonsai.bim.prop import StrProperty class BIMCityJsonProperties(PropertyGroup): diff --git a/src/bonsai/bonsai/bim/module/group/data.py b/src/bonsai/bonsai/bim/module/group/data.py index f642549e0b..e6d3b416db 100644 --- a/src/bonsai/bonsai/bim/module/group/data.py +++ b/src/bonsai/bonsai/bim/module/group/data.py @@ -20,7 +20,7 @@ import bpy import ifcopenshell import ifcopenshell.util.cost import ifcopenshell.util.element -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/group/operator.py b/src/bonsai/bonsai/bim/module/group/operator.py index 59f70493da..c23c33195f 100644 --- a/src/bonsai/bonsai/bim/module/group/operator.py +++ b/src/bonsai/bonsai/bim/module/group/operator.py @@ -19,9 +19,9 @@ import bpy import ifcopenshell.util.attribute import ifcopenshell.api -import blenderbim.bim.helper -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.bim.helper +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore import json @@ -152,7 +152,7 @@ class EnableEditingGroup(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): props = context.scene.BIMGroupProperties props.group_attributes.clear() - blenderbim.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.group), props.group_attributes) + bonsai.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.group), props.group_attributes) props.active_group_id = self.group return {"FINISHED"} diff --git a/src/bonsai/bonsai/bim/module/group/prop.py b/src/bonsai/bonsai/bim/module/group/prop.py index 084fef286e..d16bf4e801 100644 --- a/src/bonsai/bonsai/bim/module/group/prop.py +++ b/src/bonsai/bonsai/bim/module/group/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.pset.data import refresh as refresh_pset +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.pset.data import refresh as refresh_pset from bpy.types import PropertyGroup import json from bpy.props import ( diff --git a/src/bonsai/bonsai/bim/module/group/ui.py b/src/bonsai/bonsai/bim/module/group/ui.py index 1b99770563..b9db464a82 100644 --- a/src/bonsai/bonsai/bim/module/group/ui.py +++ b/src/bonsai/bonsai/bim/module/group/ui.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.group.data import GroupsData, ObjectGroupsData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.group.data import GroupsData, ObjectGroupsData class BIM_PT_groups(Panel): diff --git a/src/bonsai/bonsai/bim/module/ifcgit/data.py b/src/bonsai/bonsai/bim/module/ifcgit/data.py index ef1d2e09ce..836f30ae13 100644 --- a/src/bonsai/bonsai/bim/module/ifcgit/data.py +++ b/src/bonsai/bonsai/bim/module/ifcgit/data.py @@ -3,7 +3,7 @@ import os import shutil # import tool -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/ifcgit/operator.py b/src/bonsai/bonsai/bim/module/ifcgit/operator.py index 4cf00a4508..55d98e6434 100644 --- a/src/bonsai/bonsai/bim/module/ifcgit/operator.py +++ b/src/bonsai/bonsai/bim/module/ifcgit/operator.py @@ -1,9 +1,9 @@ import os import re import bpy -import blenderbim.core.ifcgit as core -import blenderbim.tool as tool -from blenderbim.bim.module.ifcgit.data import IfcGitData, refresh +import bonsai.core.ifcgit as core +import bonsai.tool as tool +from bonsai.bim.module.ifcgit.data import IfcGitData, refresh class CreateRepo(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/ifcgit/prop.py b/src/bonsai/bonsai/bim/module/ifcgit/prop.py index c34b2f6e84..128256957d 100644 --- a/src/bonsai/bonsai/bim/module/ifcgit/prop.py +++ b/src/bonsai/bonsai/bim/module/ifcgit/prop.py @@ -7,7 +7,7 @@ from bpy.props import ( IntProperty, EnumProperty, ) -from blenderbim.bim.module.ifcgit.data import IfcGitData +from bonsai.bim.module.ifcgit.data import IfcGitData def git_branches(self, context): diff --git a/src/bonsai/bonsai/bim/module/ifcgit/ui.py b/src/bonsai/bonsai/bim/module/ifcgit/ui.py index 7d3a886cba..38bfd83cb3 100644 --- a/src/bonsai/bonsai/bim/module/ifcgit/ui.py +++ b/src/bonsai/bonsai/bim/module/ifcgit/ui.py @@ -1,6 +1,6 @@ import bpy import time -from blenderbim.bim.module.ifcgit.data import IfcGitData +from bonsai.bim.module.ifcgit.data import IfcGitData class IFCGIT_PT_panel(bpy.types.Panel): diff --git a/src/bonsai/bonsai/bim/module/layer/data.py b/src/bonsai/bonsai/bim/module/layer/data.py index acf9769d40..eea4784334 100644 --- a/src/bonsai/bonsai/bim/module/layer/data.py +++ b/src/bonsai/bonsai/bim/module/layer/data.py @@ -18,7 +18,7 @@ import bpy import ifcopenshell -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/layer/operator.py b/src/bonsai/bonsai/bim/module/layer/operator.py index 8181a5ee44..f5d62bf70f 100644 --- a/src/bonsai/bonsai/bim/module/layer/operator.py +++ b/src/bonsai/bonsai/bim/module/layer/operator.py @@ -21,9 +21,9 @@ import json import ifcopenshell.api import ifcopenshell.util.element import ifcopenshell.util.attribute -import blenderbim.bim.helper -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.bim.helper +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore class LoadLayers(bpy.types.Operator): @@ -63,7 +63,7 @@ class EnableEditingLayer(bpy.types.Operator): def execute(self, context): props = context.scene.BIMLayerProperties props.layer_attributes.clear() - blenderbim.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.layer), props.layer_attributes) + bonsai.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.layer), props.layer_attributes) props.active_layer_id = self.layer return {"FINISHED"} diff --git a/src/bonsai/bonsai/bim/module/layer/prop.py b/src/bonsai/bonsai/bim/module/layer/prop.py index c67ce61ebf..335e23272e 100644 --- a/src/bonsai/bonsai/bim/module/layer/prop.py +++ b/src/bonsai/bonsai/bim/module/layer/prop.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/layer/ui.py b/src/bonsai/bonsai/bim/module/layer/ui.py index 920d05dead..4457e1a2b0 100644 --- a/src/bonsai/bonsai/bim/module/layer/ui.py +++ b/src/bonsai/bonsai/bim/module/layer/ui.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . from bpy.types import Panel, UIList, Mesh -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.layer.data import LayersData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.layer.data import LayersData class BIM_PT_layers(Panel): diff --git a/src/bonsai/bonsai/bim/module/library/data.py b/src/bonsai/bonsai/bim/module/library/data.py index c495ab22a7..145dfbc83a 100644 --- a/src/bonsai/bonsai/bim/module/library/data.py +++ b/src/bonsai/bonsai/bim/module/library/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/library/operator.py b/src/bonsai/bonsai/bim/module/library/operator.py index ca704f29b1..6f4e971465 100644 --- a/src/bonsai/bonsai/bim/module/library/operator.py +++ b/src/bonsai/bonsai/bim/module/library/operator.py @@ -18,10 +18,8 @@ import bpy import ifcopenshell.api -import blenderbim.tool as tool -import blenderbim.core.library as core -import blenderbim.bim.handler -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.library as core class AddLibrary(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/library/prop.py b/src/bonsai/bonsai/bim/module/library/prop.py index d1448de1a0..27add1795d 100644 --- a/src/bonsai/bonsai/bim/module/library/prop.py +++ b/src/bonsai/bonsai/bim/module/library/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.library.data import LibrariesData +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.library.data import LibrariesData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/library/ui.py b/src/bonsai/bonsai/bim/module/library/ui.py index b6111aee51..79797b9f54 100644 --- a/src/bonsai/bonsai/bim/module/library/ui.py +++ b/src/bonsai/bonsai/bim/module/library/ui.py @@ -16,10 +16,10 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.bim.helper -import blenderbim.tool as tool +import bonsai.bim.helper +import bonsai.tool as tool from bpy.types import Panel, UIList -from blenderbim.bim.module.library.data import LibrariesData, LibraryReferencesData +from bonsai.bim.module.library.data import LibrariesData, LibraryReferencesData class BIM_PT_libraries(Panel): @@ -53,7 +53,7 @@ class BIM_PT_libraries(Panel): row = self.layout.row(align=True) row.operator("bim.edit_library", icon="CHECKMARK") row.operator("bim.disable_editing_library", text="", icon="CANCEL") - blenderbim.bim.helper.draw_attributes(self.props.library_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.library_attributes, self.layout) def draw_editable_references_ui(self): row = self.layout.row(align=True) @@ -81,7 +81,7 @@ class BIM_PT_libraries(Panel): row = self.layout.row(align=True) row.operator("bim.edit_library_reference", icon="CHECKMARK") row.operator("bim.disable_editing_library_reference", text="", icon="CANCEL") - blenderbim.bim.helper.draw_attributes(self.props.reference_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.reference_attributes, self.layout) def draw_readonly_library_ui(self): row = self.layout.row() diff --git a/src/bonsai/bonsai/bim/module/light/data.py b/src/bonsai/bonsai/bim/module/light/data.py index 3824c3ad8f..55bea350d2 100644 --- a/src/bonsai/bonsai/bim/module/light/data.py +++ b/src/bonsai/bonsai/bim/module/light/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell.util.geolocation from mathutils import Vector diff --git a/src/bonsai/bonsai/bim/module/light/decorator.py b/src/bonsai/bonsai/bim/module/light/decorator.py index 59bc72cae9..35dc05f198 100644 --- a/src/bonsai/bonsai/bim/module/light/decorator.py +++ b/src/bonsai/bonsai/bim/module/light/decorator.py @@ -20,13 +20,13 @@ import bpy import blf import gpu import bmesh -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import SpaceView3D from math import radians from mathutils import Vector, Matrix from gpu_extras.batch import batch_for_shader from bpy_extras.view3d_utils import location_3d_to_region_2d -from blenderbim.bim.module.light.data import SolarData +from bonsai.bim.module.light.data import SolarData class SolarDecorator: diff --git a/src/bonsai/bonsai/bim/module/light/operator.py b/src/bonsai/bonsai/bim/module/light/operator.py index fe4697712e..093cafedf8 100644 --- a/src/bonsai/bonsai/bim/module/light/operator.py +++ b/src/bonsai/bonsai/bim/module/light/operator.py @@ -26,7 +26,7 @@ except ImportError: from datetime import datetime import bpy -import blenderbim.tool as tool +import bonsai.tool as tool from pathlib import Path from typing import Union, Optional, Sequence import json @@ -34,7 +34,7 @@ import ifcopenshell import ifcopenshell.geom import multiprocessing from mathutils import Vector -from blenderbim.bim.module.light.data import SolarData +from bonsai.bim.module.light.data import SolarData ifc_materials = [] diff --git a/src/bonsai/bonsai/bim/module/light/prop.py b/src/bonsai/bonsai/bim/module/light/prop.py index 710db6c8aa..70b9dd76cd 100644 --- a/src/bonsai/bonsai/bim/module/light/prop.py +++ b/src/bonsai/bonsai/bim/module/light/prop.py @@ -21,7 +21,7 @@ import pytz import tzfpy import json import datetime -import blenderbim.tool as tool +import bonsai.tool as tool from math import radians, pi from mathutils import Euler, Vector, Matrix, Quaternion from bpy.props import ( @@ -35,8 +35,8 @@ from bpy.props import ( ) import os from bpy.types import PropertyGroup -from blenderbim.bim.module.light.data import SolarData -from blenderbim.bim.module.light.decorator import SolarDecorator +from bonsai.bim.module.light.data import SolarData +from bonsai.bim.module.light.decorator import SolarDecorator sun_position = tool.Blender.get_sun_position_addon() diff --git a/src/bonsai/bonsai/bim/module/light/ui.py b/src/bonsai/bonsai/bim/module/light/ui.py index d4ba0a8436..b13410c3d7 100644 --- a/src/bonsai/bonsai/bim/module/light/ui.py +++ b/src/bonsai/bonsai/bim/module/light/ui.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool -from blenderbim.bim.module.light.data import SolarData +import bonsai.tool as tool +from bonsai.bim.module.light.data import SolarData class BIM_PT_radiance_exporter(bpy.types.Panel): diff --git a/src/bonsai/bonsai/bim/module/material/data.py b/src/bonsai/bonsai/bim/module/material/data.py index 48c62762c1..49a0c3d512 100644 --- a/src/bonsai/bonsai/bim/module/material/data.py +++ b/src/bonsai/bonsai/bim/module/material/data.py @@ -22,8 +22,8 @@ import ifcopenshell import ifcopenshell.util.element import ifcopenshell.util.doc import ifcopenshell.util.schema -import blenderbim.tool as tool -from blenderbim.bim.module.drawing.helper import format_distance +import bonsai.tool as tool +from bonsai.bim.module.drawing.helper import format_distance def refresh(): diff --git a/src/bonsai/bonsai/bim/module/material/operator.py b/src/bonsai/bonsai/bim/module/material/operator.py index ac5be848bb..dfb60f11a2 100644 --- a/src/bonsai/bonsai/bim/module/material/operator.py +++ b/src/bonsai/bonsai/bim/module/material/operator.py @@ -23,13 +23,13 @@ import ifcopenshell.util.element import ifcopenshell.util.attribute import ifcopenshell.util.representation import ifcopenshell.util.unit -import blenderbim.bim.helper -import blenderbim.tool as tool -import blenderbim.core.style -import blenderbim.core.material as core -import blenderbim.bim.module.model.profile as model_profile -from blenderbim.bim.module.material.prop import purge as material_prop_purge -from blenderbim.bim.ifc import IfcStore +import bonsai.bim.helper +import bonsai.tool as tool +import bonsai.core.style +import bonsai.core.material as core +import bonsai.bim.module.model.profile as model_profile +from bonsai.bim.module.material.prop import purge as material_prop_purge +from bonsai.bim.ifc import IfcStore class LoadMaterials(bpy.types.Operator, tool.Ifc.Operator): @@ -460,12 +460,12 @@ class EnableEditingAssignedMaterial(bpy.types.Operator): props.material_set_attributes.clear() if "Usage" in material.is_a(): - blenderbim.bim.helper.import_attributes2( + bonsai.bim.helper.import_attributes2( material, props.material_set_usage_attributes, callback=self.import_attributes ) - blenderbim.bim.helper.import_attributes2(material[0], props.material_set_attributes) + bonsai.bim.helper.import_attributes2(material[0], props.material_set_attributes) else: - blenderbim.bim.helper.import_attributes2(material, props.material_set_attributes) + bonsai.bim.helper.import_attributes2(material, props.material_set_attributes) return {"FINISHED"} def import_attributes(self, name, prop, data): @@ -541,7 +541,7 @@ class EditAssignedMaterial(bpy.types.Operator, tool.Ifc.Operator): return {"FINISHED"} material_set = self.file.by_id(self.material_set) - attributes = blenderbim.bim.helper.export_attributes(props.material_set_attributes) + attributes = bonsai.bim.helper.export_attributes(props.material_set_attributes) ifcopenshell.api.run( "material.edit_assigned_material", self.file, @@ -550,7 +550,7 @@ class EditAssignedMaterial(bpy.types.Operator, tool.Ifc.Operator): if self.material_set_usage: material_set_usage = self.file.by_id(self.material_set_usage) - attributes = blenderbim.bim.helper.export_attributes(props.material_set_usage_attributes) + attributes = bonsai.bim.helper.export_attributes(props.material_set_usage_attributes) if material_set_usage.is_a("IfcMaterialLayerSetUsage"): ifcopenshell.api.run( "material.edit_layer_usage", @@ -582,7 +582,7 @@ class EnableEditingMaterialSetItemProfile(bpy.types.Operator): self.props.active_material_set_item_id = self.material_set_item self.props.material_set_item_profile_attributes.clear() profile = tool.Ifc.get().by_id(self.material_set_item).Profile - blenderbim.bim.helper.import_attributes2(profile, self.props.material_set_item_profile_attributes) + bonsai.bim.helper.import_attributes2(profile, self.props.material_set_item_profile_attributes) return {"FINISHED"} @@ -610,7 +610,7 @@ class EditMaterialSetItemProfile(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): obj = bpy.data.objects.get(self.obj) if self.obj else context.active_object self.props = obj.BIMObjectMaterialProperties - attributes = blenderbim.bim.helper.export_attributes(self.props.material_set_item_profile_attributes) + attributes = bonsai.bim.helper.export_attributes(self.props.material_set_item_profile_attributes) profile = tool.Ifc.get().by_id(self.material_set_item).Profile ifcopenshell.api.run("profile.edit_profile", tool.Ifc.get(), profile=profile, attributes=attributes) self.props.active_material_set_item_id = 0 @@ -639,7 +639,7 @@ class EnableEditingMaterialSetItem(bpy.types.Operator): self.props.material_set_item_material = str(material_set_item.Material.id()) self.props.material_set_item_attributes.clear() - blenderbim.bim.helper.import_attributes2(material_set_item, self.props.material_set_item_attributes) + bonsai.bim.helper.import_attributes2(material_set_item, self.props.material_set_item_attributes) if material_set_item.is_a("IfcMaterialProfile"): if material_set_item.Profile and material_set_item.Profile.ProfileName: @@ -676,7 +676,7 @@ class EditMaterialSetItem(bpy.types.Operator, tool.Ifc.Operator): element = tool.Ifc.get_entity(obj) material = ifcopenshell.util.element.get_material(element, should_skip_usage=True) - attributes = blenderbim.bim.helper.export_attributes(props.material_set_item_attributes) + attributes = bonsai.bim.helper.export_attributes(props.material_set_item_attributes) if material.is_a("IfcMaterialConstituentSet"): ifcopenshell.api.run( diff --git a/src/bonsai/bonsai/bim/module/material/prop.py b/src/bonsai/bonsai/bim/module/material/prop.py index ff72a3dc4e..0663984a1e 100644 --- a/src/bonsai/bonsai/bim/module/material/prop.py +++ b/src/bonsai/bonsai/bim/module/material/prop.py @@ -18,10 +18,10 @@ import bpy from ifcopenshell.util.doc import get_entity_doc -import blenderbim.tool as tool -from blenderbim.bim.module.material.data import MaterialsData, ObjectMaterialData -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.prop import StrProperty, Attribute +import bonsai.tool as tool +from bonsai.bim.module.material.data import MaterialsData, ObjectMaterialData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/material/ui.py b/src/bonsai/bonsai/bim/module/material/ui.py index 6ba4921979..c675ce8ccb 100644 --- a/src/bonsai/bonsai/bim/module/material/ui.py +++ b/src/bonsai/bonsai/bim/module/material/ui.py @@ -16,15 +16,15 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.bim.helper -import blenderbim.tool as tool +import bonsai.bim.helper +import bonsai.tool as tool import bpy from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import draw_attributes -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.module.material.data import MaterialsData, ObjectMaterialData -from blenderbim.bim.module.drawing.helper import format_distance +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import draw_attributes +from bonsai.bim.helper import prop_with_search +from bonsai.bim.module.material.data import MaterialsData, ObjectMaterialData +from bonsai.bim.module.drawing.helper import format_distance class BIM_PT_materials(Panel): @@ -108,7 +108,7 @@ class BIM_PT_materials(Panel): return ifc_definition_id = self.props.active_material_id if self.props.editing_material_type == "ATTRIBUTES": - blenderbim.bim.helper.draw_attributes(self.props.material_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.material_attributes, self.layout) row = self.layout.row(align=True) row.operator("bim.edit_material", text="Save Material", icon="CHECKMARK").material = ifc_definition_id row.operator("bim.disable_editing_material", text="", icon="CANCEL") @@ -216,8 +216,8 @@ class BIM_PT_object_material(Panel): self.draw_read_only_set_ui() def draw_editable_set_ui(self): - blenderbim.bim.helper.draw_attributes(self.props.material_set_attributes, self.layout) - blenderbim.bim.helper.draw_attributes(self.props.material_set_usage_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.material_set_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.material_set_usage_attributes, self.layout) if ObjectMaterialData.data["set_item_name"] == "profile" and not self.mprops.profiles: row = self.layout.row(align=True) diff --git a/src/bonsai/bonsai/bim/module/misc/operator.py b/src/bonsai/bonsai/bim/module/misc/operator.py index b5a2ea0b27..962df15068 100644 --- a/src/bonsai/bonsai/bim/module/misc/operator.py +++ b/src/bonsai/bonsai/bim/module/misc/operator.py @@ -19,12 +19,10 @@ import bpy import numpy as np import ifcopenshell -import blenderbim.bim.handler -import blenderbim.tool as tool -import blenderbim.core.misc as core -import blenderbim.core.geometry as core_geometry -import blenderbim.core.root -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.misc as core +import bonsai.core.geometry as core_geometry +import bonsai.core.root from mathutils import Vector, Matrix, Euler @@ -160,7 +158,7 @@ class SplitAlongEdge(bpy.types.Operator, tool.Ifc.Operator): new_objs = tool.Misc.split_objects_with_cutter(objs_to_cut, cutter) for obj in new_objs: - blenderbim.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=obj) + bonsai.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=obj) bpy.ops.bim.update_representation(obj=obj.name) for obj in objs_to_cut: bpy.ops.bim.update_representation(obj=obj.name) diff --git a/src/bonsai/bonsai/bim/module/misc/prop.py b/src/bonsai/bonsai/bim/module/misc/prop.py index f01e5dd7c4..e541b56124 100644 --- a/src/bonsai/bonsai/bim/module/misc/prop.py +++ b/src/bonsai/bonsai/bim/module/misc/prop.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/model/array.py b/src/bonsai/bonsai/bim/module/model/array.py index 7ed8829891..24aeb2947a 100644 --- a/src/bonsai/bonsai/bim/module/model/array.py +++ b/src/bonsai/bonsai/bim/module/model/array.py @@ -22,7 +22,7 @@ import ifcopenshell import ifcopenshell.api import ifcopenshell.util.element import ifcopenshell.util.unit -import blenderbim.tool as tool +import bonsai.tool as tool from mathutils import Vector, Matrix diff --git a/src/bonsai/bonsai/bim/module/model/covering.py b/src/bonsai/bonsai/bim/module/model/covering.py index a1ccd34f07..72eba944d1 100644 --- a/src/bonsai/bonsai/bim/module/model/covering.py +++ b/src/bonsai/bonsai/bim/module/model/covering.py @@ -20,8 +20,8 @@ import bpy import ifcopenshell import ifcopenshell.util.element -import blenderbim.tool as tool -import blenderbim.core.covering as core +import bonsai.tool as tool +import bonsai.core.covering as core class AddInstanceFlooringCoveringFromCursor(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/model/data.py b/src/bonsai/bonsai/bim/module/model/data.py index 43979b3600..16ea184fb1 100644 --- a/src/bonsai/bonsai/bim/module/model/data.py +++ b/src/bonsai/bonsai/bim/module/model/data.py @@ -23,7 +23,7 @@ import ifcopenshell import ifcopenshell.util.element import ifcopenshell.util.schema from ifcopenshell.util.doc import get_entity_doc, get_predefined_type_doc -import blenderbim.tool as tool +import bonsai.tool as tool from math import degrees diff --git a/src/bonsai/bonsai/bim/module/model/decorator.py b/src/bonsai/bonsai/bim/module/model/decorator.py index 7046118e88..64392f57cb 100644 --- a/src/bonsai/bonsai/bim/module/model/decorator.py +++ b/src/bonsai/bonsai/bim/module/model/decorator.py @@ -20,7 +20,7 @@ import blf import gpu import gpu_extras import bmesh -import blenderbim.tool as tool +import bonsai.tool as tool from math import sin, cos, radians from bpy.types import SpaceView3D from mathutils import Vector, Matrix diff --git a/src/bonsai/bonsai/bim/module/model/door.py b/src/bonsai/bonsai/bim/module/model/door.py index f9841d3d16..6a466a7bf7 100644 --- a/src/bonsai/bonsai/bim/module/model/door.py +++ b/src/bonsai/bonsai/bim/module/model/door.py @@ -28,11 +28,11 @@ import ifcopenshell.util.representation import ifcopenshell.util.schema import ifcopenshell.util.unit from ifcopenshell.util.shape_builder import V -import blenderbim.tool as tool -import blenderbim.core.geometry -import blenderbim.core.geometry as core -import blenderbim.core.root -from blenderbim.bim.module.model.window import create_bm_window, create_bm_box +import bonsai.tool as tool +import bonsai.core.geometry +import bonsai.core.geometry as core +import bonsai.core.root +from bonsai.bim.module.model.window import create_bm_window, create_bm_box from mathutils import Vector, Matrix @@ -144,7 +144,7 @@ def update_door_modifier_representation(context: bpy.types.Context, obj: bpy.typ previously_active_context.TargetView, ) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -510,10 +510,10 @@ class BIM_OT_add_door(bpy.types.Operator, tool.Ifc.Operator): obj = bpy.data.objects.new("IfcDoor", mesh) obj.location = spawn_location - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, obj=obj, ifc_class="IfcDoor", should_add_representation=False ) - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) if tool.Ifc.get_schema() != "IFC2X3": element.PredefinedType = "DOOR" @@ -575,7 +575,7 @@ class CancelEditingDoor(bpy.types.Operator, tool.Ifc.Operator): props.set_props_kwargs_from_ifc_data(data) body = ifcopenshell.util.representation.get_representation(element, "Model", "Body", "MODEL_VIEW") - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, diff --git a/src/bonsai/bonsai/bim/module/model/grid.py b/src/bonsai/bonsai/bim/module/model/grid.py index cb1ff7e0b3..d42fe30a6d 100644 --- a/src/bonsai/bonsai/bim/module/model/grid.py +++ b/src/bonsai/bonsai/bim/module/model/grid.py @@ -18,7 +18,7 @@ import bpy import ifcopenshell.api -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import Operator from bpy.props import FloatProperty, IntProperty from mathutils import Vector diff --git a/src/bonsai/bonsai/bim/module/model/handler.py b/src/bonsai/bonsai/bim/module/model/handler.py index 2e95d4f25d..95a3190ab7 100644 --- a/src/bonsai/bonsai/bim/module/model/handler.py +++ b/src/bonsai/bonsai/bim/module/model/handler.py @@ -19,8 +19,8 @@ import bpy import ifcopenshell import ifcopenshell.api -from blenderbim.bim.module.model import root, product, wall, slab, profile, opening, task -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.module.model import root, product, wall, slab, profile, opening, task +from bonsai.bim.ifc import IfcStore from bpy.app.handlers import persistent diff --git a/src/bonsai/bonsai/bim/module/model/mep.py b/src/bonsai/bonsai/bim/module/model/mep.py index 4d7b77abea..f5ce337644 100644 --- a/src/bonsai/bonsai/bim/module/model/mep.py +++ b/src/bonsai/bonsai/bim/module/model/mep.py @@ -28,19 +28,17 @@ import ifcopenshell.util.unit import ifcopenshell.util.system import ifcopenshell.util.element import ifcopenshell.util.representation -import mathutils.geometry import numpy as np -import blenderbim.bim.handler -import blenderbim.core.type -import blenderbim.core.root -import blenderbim.core.geometry -import blenderbim.tool as tool +import bonsai.core.type +import bonsai.core.root +import bonsai.core.geometry +import bonsai.tool as tool from math import pi, degrees, radians, sin, cos, asin, tan from copy import copy from mathutils import Vector, Matrix from ifcopenshell.util.shape_builder import ShapeBuilder -from blenderbim.bim.module.model.profile import DumbProfileJoiner -from blenderbim.tool.cad import VTX_PRECISION +from bonsai.bim.module.model.profile import DumbProfileJoiner +from bonsai.tool.cad import VTX_PRECISION V = lambda *x: Vector([float(i) for i in x]) @@ -529,7 +527,7 @@ class MEPGenerator: obj = bpy.data.objects.new("Obstruction", None) # TODO: OBSTRUCTION predefined type is available only for IfcDuctFitting and IfcPipeFitting - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -840,7 +838,7 @@ class MEPAddTransition(bpy.types.Operator, tool.Ifc.Operator): else: # create new fitting type if nothing is compatible mesh = bpy.data.meshes.new("Transition") obj = bpy.data.objects.new("Transition", mesh) - transition_type = blenderbim.core.root.assign_class( + transition_type = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -1191,7 +1189,7 @@ class MEPAddBend(bpy.types.Operator, tool.Ifc.Operator): else: # create new fitting type if nothing is compatible mesh = bpy.data.meshes.new("Bend") obj = bpy.data.objects.new("Bend", mesh) - bend_type = blenderbim.core.root.assign_class( + bend_type = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, diff --git a/src/bonsai/bonsai/bim/module/model/opening.py b/src/bonsai/bonsai/bim/module/model/opening.py index 9a3e5b736b..55ccf90c31 100644 --- a/src/bonsai/bonsai/bim/module/model/opening.py +++ b/src/bonsai/bonsai/bim/module/model/opening.py @@ -32,11 +32,10 @@ import ifcopenshell.util.shape_builder import ifcopenshell.util.placement import ifcopenshell.util.representation import ifcopenshell.util.unit -import blenderbim.tool as tool -import blenderbim.core.geometry -import blenderbim.bim.import_ifc as import_ifc -import blenderbim.bim.handler -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.geometry +import bonsai.bim.import_ifc as import_ifc +from bonsai.bim.ifc import IfcStore from math import pi, radians from mathutils import Vector, Matrix from bpy.types import Operator @@ -126,7 +125,7 @@ class FilledOpeningGenerator: bpy.context.view_layer.update() if tool.Ifc.is_moved(voided_obj): - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=voided_obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=voided_obj) existing_opening_occurrence = self.get_existing_opening_occurrence_if_any(filling) @@ -178,7 +177,7 @@ class FilledOpeningGenerator: context = tool.Geometry.get_active_representation_context(voided_obj) representation = tool.Geometry.get_representation_by_context(voided_element, context) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=voided_obj, @@ -243,7 +242,7 @@ class FilledOpeningGenerator: if not voided_obj.data: continue representation = tool.Ifc.get().by_id(voided_obj.data.BIMMeshProperties.ifc_definition_id) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=voided_obj, @@ -384,11 +383,9 @@ class RecalculateFill(bpy.types.Operator, tool.Ifc.Operator): for building_element in building_elements: building_obj = tool.Ifc.get_object(building_element) if tool.Ifc.is_moved(building_obj): - blenderbim.core.geometry.edit_object_placement( - tool.Ifc, tool.Geometry, tool.Surveyor, obj=building_obj - ) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=building_obj) for opening in openings: - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) ifcopenshell.api.run( "geometry.edit_object_placement", tool.Ifc.get(), product=opening, matrix=obj.matrix_world ) @@ -403,7 +400,7 @@ class RecalculateFill(bpy.types.Operator, tool.Ifc.Operator): if building_obj and building_obj.data: representation = tool.Geometry.get_active_representation(building_obj) if representation: - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=building_obj, @@ -567,7 +564,7 @@ class AddBoolean(Operator, tool.Ifc.Operator): tool.Model.mark_manual_booleans(element1, booleans) tool.Model.clear_scene_openings() - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj1, @@ -710,7 +707,7 @@ class RemoveBooleans(Operator, tool.Ifc.Operator, AddObjectHelper): bbim_boolean_updates.setdefault(element, []).append(boolean_id) body = ifcopenshell.util.representation.get_representation(element, "Model", "Body", "MODEL_VIEW") if body: - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=upstream_obj, @@ -740,7 +737,7 @@ class ShowOpenings(Operator, tool.Ifc.Operator): if not element or not getattr(element, "HasOpenings", None): continue if tool.Ifc.is_moved(obj): - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) openings = tool.Model.load_openings( [ r.RelatedOpeningElement @@ -802,8 +799,8 @@ class EditOpenings(Operator, tool.Ifc.Operator): opening_obj = tool.Ifc.get_object(opening) building_objs.add(obj) - similar_openings = blenderbim.core.geometry.get_similar_openings(tool.Ifc, opening) - similar_openings_building_objs = blenderbim.core.geometry.get_similar_openings_building_objs( + similar_openings = bonsai.core.geometry.get_similar_openings(tool.Ifc, opening) + similar_openings_building_objs = bonsai.core.geometry.get_similar_openings_building_objs( tool.Ifc, similar_openings ) building_objs.update(similar_openings_building_objs) @@ -811,16 +808,12 @@ class EditOpenings(Operator, tool.Ifc.Operator): if opening_obj: if tool.Ifc.is_edited(opening_obj): tool.Geometry.run_geometry_update_representation(obj=opening_obj) - blenderbim.core.geometry.edit_similar_opening_placement( - tool.Geometry, opening, similar_openings - ) + bonsai.core.geometry.edit_similar_opening_placement(tool.Geometry, opening, similar_openings) elif tool.Ifc.is_moved(opening_obj): - blenderbim.core.geometry.edit_object_placement( + bonsai.core.geometry.edit_object_placement( tool.Ifc, tool.Geometry, tool.Surveyor, obj=opening_obj ) - blenderbim.core.geometry.edit_similar_opening_placement( - tool.Geometry, opening, similar_openings - ) + bonsai.core.geometry.edit_similar_opening_placement(tool.Geometry, opening, similar_openings) building_objs.update( self.get_all_building_objects_of_similar_openings(opening) diff --git a/src/bonsai/bonsai/bim/module/model/pie.py b/src/bonsai/bonsai/bim/module/model/pie.py index 8119b2fe80..19e836913a 100644 --- a/src/bonsai/bonsai/bim/module/model/pie.py +++ b/src/bonsai/bonsai/bim/module/model/pie.py @@ -17,10 +17,8 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool -import blenderbim.core.spatial -import blenderbim.core.aggregate -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore class OpenPieClass(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/model/product.py b/src/bonsai/bonsai/bim/module/model/product.py index ef988b47ba..83203248f5 100644 --- a/src/bonsai/bonsai/bim/module/model/product.py +++ b/src/bonsai/bonsai/bim/module/model/product.py @@ -28,14 +28,14 @@ import ifcopenshell.util.placement import ifcopenshell.util.representation import ifcopenshell.util.type import ifcopenshell.util.unit -import blenderbim.tool as tool -import blenderbim.core.aggregate -import blenderbim.core.type -import blenderbim.core.geometry -import blenderbim.core.spatial +import bonsai.tool as tool +import bonsai.core.aggregate +import bonsai.core.type +import bonsai.core.geometry +import bonsai.core.spatial from . import wall, slab, profile, mep -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.model.data import AuthoringData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.model.data import AuthoringData from mathutils import Vector, Matrix from bpy_extras.object_utils import AddObjectHelper import json @@ -201,7 +201,7 @@ class AddConstrTypeInstance(bpy.types.Operator): mesh_data = obj.data element = tool.Ifc.get_entity(obj) - blenderbim.core.type.assign_type(tool.Ifc, tool.Type, element=element, type=relating_type) + bonsai.core.type.assign_type(tool.Ifc, tool.Type, element=element, type=relating_type) if obj.data != mesh_data: # remove orphaned mesh from "bim.assign_class" tool.Blender.remove_data_block(mesh_data) @@ -219,13 +219,13 @@ class AddConstrTypeInstance(bpy.types.Operator): parent = ifcopenshell.util.element.get_aggregate(building_element) if parent: parent_obj = tool.Ifc.get_object(parent) - blenderbim.core.aggregate.assign_object( + bonsai.core.aggregate.assign_object( tool.Ifc, tool.Aggregate, tool.Collector, relating_obj=parent_obj, related_obj=obj ) else: parent = ifcopenshell.util.element.get_container(building_element) if parent: - blenderbim.core.spatial.assign_container( + bonsai.core.spatial.assign_container( tool.Ifc, tool.Collector, tool.Spatial, container=parent, element_obj=obj ) @@ -466,7 +466,7 @@ def generate_box(usecase_path, ifc_file, settings): old_box = ifcopenshell.util.representation.get_representation(product, "Model", "Box", "MODEL_VIEW") if settings["context"].ContextType == "Model" and getattr(settings["context"], "ContextIdentifier") == "Body": if old_box: - blenderbim.core.geometry.remove_representation(tool.Ifc, tool.Geometry, obj=obj, representation=old_box) + bonsai.core.geometry.remove_representation(tool.Ifc, tool.Geometry, obj=obj, representation=old_box) new_settings = settings.copy() new_settings["context"] = box_context @@ -500,7 +500,7 @@ def regenerate_profile_usage(usecase_path, ifc_file, settings): continue representation = ifcopenshell.util.representation.get_representation(element, "Model", "Body", "MODEL_VIEW") if representation: - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, diff --git a/src/bonsai/bonsai/bim/module/model/profile.py b/src/bonsai/bonsai/bim/module/model/profile.py index 9b8c130109..a061c8c881 100644 --- a/src/bonsai/bonsai/bim/module/model/profile.py +++ b/src/bonsai/bonsai/bim/module/model/profile.py @@ -27,17 +27,16 @@ import ifcopenshell.util.unit import ifcopenshell.util.element import ifcopenshell.util.placement import ifcopenshell.util.representation -import blenderbim.bim.handler -import blenderbim.tool as tool -import blenderbim.core.type -import blenderbim.core.geometry -import blenderbim.core.material -import blenderbim.core.root +import bonsai.tool as tool +import bonsai.core.type +import bonsai.core.geometry +import bonsai.core.material +import bonsai.core.root from math import pi, degrees, inf from mathutils import Vector, Matrix, Quaternion -from blenderbim.bim.module.geometry.helper import Helper -from blenderbim.bim.module.model.wall import DumbWallRecalculator -from blenderbim.bim.module.model.decorator import ProfileDecorator +from bonsai.bim.module.geometry.helper import Helper +from bonsai.bim.module.model.wall import DumbWallRecalculator +from bonsai.bim.module.model.decorator import ProfileDecorator class DumbProfileGenerator: @@ -88,7 +87,7 @@ class DumbProfileGenerator: if self.container_obj: matrix_world.translation.z = self.container_obj.location.z - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -103,7 +102,7 @@ class DumbProfileGenerator: obj.matrix_world = matrix_world bpy.context.view_layer.update() - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) if self.axis_context: representation = ifcopenshell.api.run( @@ -127,7 +126,7 @@ class DumbProfileGenerator: ifcopenshell.api.run( "geometry.assign_representation", tool.Ifc.get(), product=element, representation=representation ) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -452,9 +451,7 @@ class DumbProfileJoiner: if old_axis: for inverse in tool.Ifc.get().get_inverse(old_axis): ifcopenshell.util.element.replace_attribute(inverse, old_axis, new_axis) - blenderbim.core.geometry.remove_representation( - tool.Ifc, tool.Geometry, obj=obj, representation=old_axis - ) + bonsai.core.geometry.remove_representation(tool.Ifc, tool.Geometry, obj=obj, representation=old_axis) else: ifcopenshell.api.run( "geometry.assign_representation", tool.Ifc.get(), product=element, representation=new_axis @@ -488,7 +485,7 @@ class DumbProfileJoiner: ifcopenshell.util.element.replace_attribute(inverse, old_body, new_body) obj.data.BIMMeshProperties.ifc_definition_id = int(new_body.id()) obj.data.name = f"{self.body_context.id()}/{new_body.id()}" - blenderbim.core.geometry.remove_representation(tool.Ifc, tool.Geometry, obj=obj, representation=old_body) + bonsai.core.geometry.remove_representation(tool.Ifc, tool.Geometry, obj=obj, representation=old_body) else: ifcopenshell.api.run( "geometry.assign_representation", tool.Ifc.get(), product=element, representation=new_body @@ -512,8 +509,8 @@ class DumbProfileJoiner: else: coordinates[2] -= change_in_z opening.ObjectPlacement.RelativePlacement.Location.Coordinates = coordinates - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -525,7 +522,7 @@ class DumbProfileJoiner: tool.Geometry.record_object_materials(obj) if element.is_a("IfcFlowSegment") or element.is_a("IfcFlowFitting"): # lazy import to avoid circular import errors - from blenderbim.bim.module.model.mep import MEPGenerator + from bonsai.bim.module.model.mep import MEPGenerator MEPGenerator().setup_ports(obj) @@ -931,7 +928,7 @@ class PatchNonParametricMepSegment(bpy.types.Operator, tool.Ifc.Operator): return context.active_object def _execute(self, context): - blenderbim.core.material.patch_non_parametric_mep_segment( + bonsai.core.material.patch_non_parametric_mep_segment( tool.Ifc, tool.Material, tool.Profile, obj=context.active_object ) bpy.ops.bim.enable_editing_extrusion_axis() @@ -984,7 +981,7 @@ def disable_editing_extrusion_axis(context): element = tool.Ifc.get_entity(obj) body = ifcopenshell.util.representation.get_representation(element, "Model", "Body", "MODEL_VIEW") - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -1048,7 +1045,7 @@ class EditExtrusionAxis(bpy.types.Operator, tool.Ifc.Operator): matrix.translation = start body = ifcopenshell.util.representation.get_representation(element, "Model", "Body", "MODEL_VIEW") - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, diff --git a/src/bonsai/bonsai/bim/module/model/prop.py b/src/bonsai/bonsai/bim/module/model/prop.py index dcf8a71f54..cba6ceec55 100644 --- a/src/bonsai/bonsai/bim/module/model/prop.py +++ b/src/bonsai/bonsai/bim/module/model/prop.py @@ -18,10 +18,10 @@ import bpy import ifcopenshell -import blenderbim.tool as tool +import bonsai.tool as tool import math -from blenderbim.bim.prop import ObjProperty -from blenderbim.bim.module.model.data import AuthoringData +from bonsai.bim.prop import ObjProperty +from bonsai.bim.module.model.data import AuthoringData from bpy.types import PropertyGroup, NodeTree from math import pi diff --git a/src/bonsai/bonsai/bim/module/model/railing.py b/src/bonsai/bonsai/bim/module/model/railing.py index 395efe8169..0ad8b087f9 100644 --- a/src/bonsai/bonsai/bim/module/model/railing.py +++ b/src/bonsai/bonsai/bim/module/model/railing.py @@ -24,12 +24,12 @@ import ifcopenshell.api import ifcopenshell.util.representation import ifcopenshell.util.unit from ifcopenshell.util.shape_builder import V -import blenderbim.core.root -import blenderbim.core.geometry -import blenderbim.tool as tool -from blenderbim.bim.module.model.door import bm_sort_out_geom -from blenderbim.bim.module.model.data import RailingData, refresh -from blenderbim.bim.module.model.decorator import ProfileDecorator +import bonsai.core.root +import bonsai.core.geometry +import bonsai.tool as tool +from bonsai.bim.module.model.door import bm_sort_out_geom +from bonsai.bim.module.model.data import RailingData, refresh +from bonsai.bim.module.model.decorator import ProfileDecorator from mathutils import Vector import json @@ -300,7 +300,7 @@ class BIM_OT_add_railing(bpy.types.Operator, tool.Ifc.Operator): obj.location = spawn_location body_context = ifcopenshell.util.representation.get_context(ifc_file, "Model", "Body", "MODEL_VIEW") - blenderbim.core.root.assign_class( + bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -476,7 +476,7 @@ def cancel_editing_railing_path(context): else: element = tool.Ifc.get_entity(obj) body = ifcopenshell.util.representation.get_representation(element, "Model", "Body", "MODEL_VIEW") - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, diff --git a/src/bonsai/bonsai/bim/module/model/roof.py b/src/bonsai/bonsai/bim/module/model/roof.py index e503d79a91..78661dd55d 100644 --- a/src/bonsai/bonsai/bim/module/model/roof.py +++ b/src/bonsai/bonsai/bim/module/model/roof.py @@ -23,12 +23,12 @@ import ifcopenshell import ifcopenshell.api import ifcopenshell.util.representation import ifcopenshell.util.unit -import blenderbim.core.root -import blenderbim.tool as tool -from blenderbim.bim.helper import convert_property_group_from_si -from blenderbim.bim.module.model.door import bm_sort_out_geom -from blenderbim.bim.module.model.data import RoofData, refresh -from blenderbim.bim.module.model.decorator import ProfileDecorator +import bonsai.core.root +import bonsai.tool as tool +from bonsai.bim.helper import convert_property_group_from_si +from bonsai.bim.module.model.door import bm_sort_out_geom +from bonsai.bim.module.model.data import RoofData, refresh +from bonsai.bim.module.model.decorator import ProfileDecorator import json from math import tan, pi, radians @@ -516,7 +516,7 @@ class BIM_OT_add_roof(bpy.types.Operator, tool.Ifc.Operator): obj.location = spawn_location body_context = ifcopenshell.util.representation.get_context(ifc_file, "Model", "Body", "MODEL_VIEW") - blenderbim.core.root.assign_class( + bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, diff --git a/src/bonsai/bonsai/bim/module/model/root.py b/src/bonsai/bonsai/bim/module/model/root.py index a0eedbfb5d..e82acfdc5e 100644 --- a/src/bonsai/bonsai/bim/module/model/root.py +++ b/src/bonsai/bonsai/bim/module/model/root.py @@ -18,8 +18,8 @@ import bpy import ifcopenshell.file -import blenderbim.bim.handler -import blenderbim.tool as tool +import bonsai.bim.handler +import bonsai.tool as tool from bonsai.bim.ifc import IFC_CONNECTED_TYPE from typing import Any @@ -47,4 +47,4 @@ def sync_name(usecase_path: str, ifc_file: ifcopenshell.file, settings: dict[str elif isinstance(obj, bpy.types.Material): new_name = settings["attributes"]["Name"] or "Unnamed" obj.name = new_name - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() diff --git a/src/bonsai/bonsai/bim/module/model/slab.py b/src/bonsai/bonsai/bim/module/model/slab.py index 11a8e4da31..d160c589c1 100644 --- a/src/bonsai/bonsai/bim/module/model/slab.py +++ b/src/bonsai/bonsai/bim/module/model/slab.py @@ -26,14 +26,13 @@ import ifcopenshell.util.placement import ifcopenshell.util.representation import ifcopenshell.util.unit import ifcopenshell.util.type -import blenderbim.bim.handler -import blenderbim.core.type -import blenderbim.core.geometry -import blenderbim.core.root -import blenderbim.tool as tool +import bonsai.core.type +import bonsai.core.geometry +import bonsai.core.root +import bonsai.tool as tool from mathutils import Vector, Matrix -from blenderbim.bim.module.geometry.helper import Helper -from blenderbim.bim.module.model.decorator import ProfileDecorator +from bonsai.bim.module.geometry.helper import Helper +from bonsai.bim.module.model.decorator import ProfileDecorator from typing import Optional @@ -169,7 +168,7 @@ class DumbSlabGenerator: obj.matrix_world = Matrix.Rotation(self.x_angle, 4, "X") @ matrix_world bpy.context.view_layer.update() - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -179,7 +178,7 @@ class DumbSlabGenerator: ) ifcopenshell.api.run("type.assign_type", self.file, related_objects=[element], relating_type=self.relating_type) - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) representation = ifcopenshell.api.run( "geometry.add_slab_representation", tool.Ifc.get(), @@ -191,7 +190,7 @@ class DumbSlabGenerator: "geometry.assign_representation", tool.Ifc.get(), product=element, representation=representation ) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -308,7 +307,7 @@ class DumbSlabPlaner: ) for inverse in tool.Ifc.get().get_inverse(representation): ifcopenshell.util.element.replace_attribute(inverse, representation, new_rep) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -317,7 +316,7 @@ class DumbSlabPlaner: is_global=True, should_sync_changes_first=False, ) - blenderbim.core.geometry.remove_representation( + bonsai.core.geometry.remove_representation( tool.Ifc, tool.Geometry, obj=obj, representation=representation ) return @@ -335,7 +334,7 @@ class DumbSlabPlaner: "geometry.assign_representation", tool.Ifc.get(), product=element, representation=representation ) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -540,7 +539,7 @@ class EditSketchExtrusionProfile(bpy.types.Operator, tool.Ifc.Operator): bpy.ops.view3d.slvs_delete_entity(index=p1["slvs_index"]) bpy.ops.view3d.slvs_delete_entity(index=nm["slvs_index"]) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -585,7 +584,7 @@ def disable_editing_extrusion_profile(context): body = ifcopenshell.util.representation.get_representation(element, "Model", "Body", "MODEL_VIEW") profile_mesh = obj.data - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -686,7 +685,7 @@ class EditExtrusionProfile(bpy.types.Operator, tool.Ifc.Operator): ifcopenshell.util.element.remove_deep2(tool.Ifc.get(), old_profile) profile_mesh = obj.data - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -717,9 +716,7 @@ class EditExtrusionProfile(bpy.types.Operator, tool.Ifc.Operator): if old_footprint: for inverse in tool.Ifc.get().get_inverse(old_footprint): ifcopenshell.util.element.replace_attribute(inverse, old_footprint, new_footprint) - blenderbim.core.geometry.remove_representation( - tool.Ifc, tool.Geometry, obj=obj, representation=old_footprint - ) + bonsai.core.geometry.remove_representation(tool.Ifc, tool.Geometry, obj=obj, representation=old_footprint) else: ifcopenshell.api.run( "geometry.assign_representation", tool.Ifc.get(), product=element, representation=new_footprint diff --git a/src/bonsai/bonsai/bim/module/model/space.py b/src/bonsai/bonsai/bim/module/model/space.py index 0b25f41e24..cb0bb79f49 100644 --- a/src/bonsai/bonsai/bim/module/model/space.py +++ b/src/bonsai/bonsai/bim/module/model/space.py @@ -18,8 +18,8 @@ import bpy -import blenderbim.tool as tool -import blenderbim.core.spatial as core +import bonsai.tool as tool +import bonsai.core.spatial as core class GenerateSpace(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/model/stair.py b/src/bonsai/bonsai/bim/module/model/stair.py index 4877689744..256ee6cc10 100644 --- a/src/bonsai/bonsai/bim/module/model/stair.py +++ b/src/bonsai/bonsai/bim/module/model/stair.py @@ -24,8 +24,8 @@ import ifcopenshell.api import ifcopenshell.util.element import ifcopenshell.util.representation import ifcopenshell.util.unit -import blenderbim.core.root -import blenderbim.tool as tool +import bonsai.core.root +import bonsai.tool as tool from mathutils import Vector from bmesh.types import BMVert from bpy.types import Operator @@ -219,7 +219,7 @@ class BIM_OT_add_clever_stair(bpy.types.Operator, tool.Ifc.Operator): obj = bpy.data.objects.new("StairFlight", mesh) obj.location = spawn_location - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, diff --git a/src/bonsai/bonsai/bim/module/model/sverchok_modifier.py b/src/bonsai/bonsai/bim/module/model/sverchok_modifier.py index a085ef1e60..5624797752 100644 --- a/src/bonsai/bonsai/bim/module/model/sverchok_modifier.py +++ b/src/bonsai/bonsai/bim/module/model/sverchok_modifier.py @@ -20,7 +20,7 @@ import bpy import bmesh import ifcopenshell -import blenderbim.tool as tool +import bonsai.tool as tool import json import zipfile diff --git a/src/bonsai/bonsai/bim/module/model/ui.py b/src/bonsai/bonsai/bim/module/model/ui.py index b119de34d2..9b29b6429e 100644 --- a/src/bonsai/bonsai/bim/module/model/ui.py +++ b/src/bonsai/bonsai/bim/module/model/ui.py @@ -17,10 +17,10 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim -import blenderbim.tool as tool +import bonsai.bim +import bonsai.tool as tool from bpy.types import Panel, Menu -from blenderbim.bim.module.model.data import ( +from bonsai.bim.module.model.data import ( AuthoringData, ArrayData, StairData, @@ -30,13 +30,13 @@ from blenderbim.bim.module.model.data import ( RailingData, RoofData, ) -from blenderbim.bim.module.model.prop import get_ifc_class -from blenderbim.bim.module.model.stair import regenerate_stair_mesh -from blenderbim.bim.module.model.window import update_window_modifier_bmesh -from blenderbim.bim.module.model.door import update_door_modifier_bmesh -from blenderbim.bim.module.model.railing import update_railing_modifier_bmesh -from blenderbim.bim.module.model.roof import update_roof_modifier_bmesh -from blenderbim.bim.helper import prop_with_search +from bonsai.bim.module.model.prop import get_ifc_class +from bonsai.bim.module.model.stair import regenerate_stair_mesh +from bonsai.bim.module.model.window import update_window_modifier_bmesh +from bonsai.bim.module.model.door import update_door_modifier_bmesh +from bonsai.bim.module.model.railing import update_railing_modifier_bmesh +from bonsai.bim.module.model.roof import update_roof_modifier_bmesh +from bonsai.bim.helper import prop_with_search from collections.abc import Iterable @@ -664,10 +664,10 @@ def add_menu(self, context): def add_mesh_object_menu(self, context): self.layout.separator() - self.layout.operator("mesh.add_grid", icon_value=blenderbim.bim.icons["IFC"].icon_id) - self.layout.operator("mesh.add_stair", icon_value=blenderbim.bim.icons["IFC"].icon_id) - self.layout.operator("mesh.add_clever_stair", icon_value=blenderbim.bim.icons["IFC"].icon_id) - self.layout.operator("mesh.add_window", icon_value=blenderbim.bim.icons["IFC"].icon_id) - self.layout.operator("mesh.add_door", icon_value=blenderbim.bim.icons["IFC"].icon_id) - self.layout.operator("mesh.add_railing", icon_value=blenderbim.bim.icons["IFC"].icon_id) - self.layout.operator("mesh.add_roof", icon_value=blenderbim.bim.icons["IFC"].icon_id) + self.layout.operator("mesh.add_grid", icon_value=bonsai.bim.icons["IFC"].icon_id) + self.layout.operator("mesh.add_stair", icon_value=bonsai.bim.icons["IFC"].icon_id) + self.layout.operator("mesh.add_clever_stair", icon_value=bonsai.bim.icons["IFC"].icon_id) + self.layout.operator("mesh.add_window", icon_value=bonsai.bim.icons["IFC"].icon_id) + self.layout.operator("mesh.add_door", icon_value=bonsai.bim.icons["IFC"].icon_id) + self.layout.operator("mesh.add_railing", icon_value=bonsai.bim.icons["IFC"].icon_id) + self.layout.operator("mesh.add_roof", icon_value=bonsai.bim.icons["IFC"].icon_id) diff --git a/src/bonsai/bonsai/bim/module/model/wall.py b/src/bonsai/bonsai/bim/module/model/wall.py index f3fea80db7..46837f1b4e 100644 --- a/src/bonsai/bonsai/bim/module/model/wall.py +++ b/src/bonsai/bonsai/bim/module/model/wall.py @@ -28,20 +28,16 @@ import ifcopenshell.util.placement import ifcopenshell.util.representation import ifcopenshell.util.type import mathutils.geometry -import blenderbim.bim.handler -import blenderbim.core.type -import blenderbim.core.root -import blenderbim.core.geometry -import blenderbim.core.model as core -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.core.type +import bonsai.core.root +import bonsai.core.geometry +import bonsai.core.model as core +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore from math import pi, sin, cos, degrees -from time import time from mathutils import Vector, Matrix -from mathutils.bvhtree import BVHTree -from bpy_extras import view3d_utils -from blenderbim.bim.module.model.opening import FilledOpeningGenerator -from blenderbim.bim.module.model.decorator import WallPolylineDecorator +from bonsai.bim.module.model.opening import FilledOpeningGenerator +from bonsai.bim.module.model.decorator import WallPolylineDecorator from typing import Optional from lark import Lark, Transformer @@ -232,7 +228,7 @@ class ChangeExtrusionXAngle(bpy.types.Operator, tool.Ifc.Operator): if tool.Model.get_usage_type(element) == "LAYER2": layer2_objs.append(obj) else: - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -974,7 +970,7 @@ class DumbWallGenerator: obj.matrix_world = matrix_world bpy.context.view_layer.update() - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -993,7 +989,7 @@ class DumbWallGenerator: ifcopenshell.api.run( "geometry.assign_representation", tool.Ifc.get(), product=element, representation=representation ) - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) representation = ifcopenshell.api.run( "geometry.add_wall_representation", tool.Ifc.get(), @@ -1007,7 +1003,7 @@ class DumbWallGenerator: ifcopenshell.api.run( "geometry.assign_representation", tool.Ifc.get(), product=element, representation=representation ) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -1211,7 +1207,7 @@ class DumbWallJoiner: def flip(self, wall1): if tool.Ifc.is_moved(wall1): - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=wall1) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=wall1) element1 = tool.Ifc.get_entity(wall1) if not element1 or tool.Model.get_usage_type(element1) != "LAYER2": @@ -1285,7 +1281,7 @@ class DumbWallJoiner: bpy.context.view_layer.update() body = ifcopenshell.util.representation.get_representation(element1, "Model", "Body", "MODEL_VIEW") - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=wall1, @@ -1358,7 +1354,7 @@ class DumbWallJoiner: wall2.data = wall2.data.copy() for collection in wall1.users_collection: collection.objects.link(wall2) - blenderbim.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=wall2) + bonsai.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=wall2) return wall2 def join_Z(self, wall1, slab2): @@ -1551,9 +1547,7 @@ class DumbWallJoiner: if old_axis: for inverse in tool.Ifc.get().get_inverse(old_axis): ifcopenshell.util.element.replace_attribute(inverse, old_axis, new_axis) - blenderbim.core.geometry.remove_representation( - tool.Ifc, tool.Geometry, obj=obj, representation=old_axis - ) + bonsai.core.geometry.remove_representation(tool.Ifc, tool.Geometry, obj=obj, representation=old_axis) else: ifcopenshell.api.run( "geometry.assign_representation", tool.Ifc.get(), product=element, representation=new_axis @@ -1578,7 +1572,7 @@ class DumbWallJoiner: ifcopenshell.util.element.replace_attribute(inverse, old_body, new_body) obj.data.BIMMeshProperties.ifc_definition_id = int(new_body.id()) obj.data.name = f"{self.body_context.id()}/{new_body.id()}" - blenderbim.core.geometry.remove_representation(tool.Ifc, tool.Geometry, obj=obj, representation=old_body) + bonsai.core.geometry.remove_representation(tool.Ifc, tool.Geometry, obj=obj, representation=old_body) else: ifcopenshell.api.run( "geometry.assign_representation", tool.Ifc.get(), product=element, representation=new_body @@ -1604,23 +1598,23 @@ class DumbWallJoiner: coordinates[0] -= change_in_x opening.ObjectPlacement.RelativePlacement.Location.Coordinates = coordinates - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) # If opening has filling then stick to the filling's position # We're applying new openings position only after wall position is applied for opening in [r.RelatedOpeningElement for r in element.HasOpenings if r.RelatedOpeningElement.HasFillings]: - similar_openings = blenderbim.core.geometry.get_similar_openings(tool.Ifc, opening) + similar_openings = bonsai.core.geometry.get_similar_openings(tool.Ifc, opening) filling_obj = tool.Ifc.get_object(opening.HasFillings[0].RelatedBuildingElement) filling_moved = tool.Ifc.is_moved(filling_obj) if filling_moved: - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=filling_obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=filling_obj) if filling_moved or wall_moved: ifcopenshell.api.run( "geometry.edit_object_placement", tool.Ifc.get(), product=opening, matrix=filling_obj.matrix_world ) - blenderbim.core.geometry.edit_similar_opening_placement(tool.Geometry, opening, similar_openings) + bonsai.core.geometry.edit_similar_opening_placement(tool.Geometry, opening, similar_openings) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, diff --git a/src/bonsai/bonsai/bim/module/model/window.py b/src/bonsai/bonsai/bim/module/model/window.py index d499a9fd04..bbf6fd19be 100644 --- a/src/bonsai/bonsai/bim/module/model/window.py +++ b/src/bonsai/bonsai/bim/module/model/window.py @@ -22,9 +22,9 @@ import json import bmesh import collections import ifcopenshell -import blenderbim.tool as tool -import blenderbim.core.root -import blenderbim.core.geometry +import bonsai.tool as tool +import bonsai.core.root +import bonsai.core.geometry from ifcopenshell.api.geometry.add_window_representation import DEFAULT_PANEL_SCHEMAS import ifcopenshell.api import ifcopenshell.util.element @@ -105,7 +105,7 @@ def update_window_modifier_representation(context, obj): previously_active_context.ContextIdentifier, previously_active_context.TargetView, ) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -403,10 +403,10 @@ class BIM_OT_add_window(bpy.types.Operator, tool.Ifc.Operator): obj = bpy.data.objects.new("IfcWindow", mesh) obj.location = spawn_location - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, obj=obj, ifc_class="IfcWindow", should_add_representation=False ) - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj) if tool.Ifc.get_schema() != "IFC2X3": element.PredefinedType = "WINDOW" @@ -465,7 +465,7 @@ class CancelEditingWindow(bpy.types.Operator, tool.Ifc.Operator): props.set_props_kwargs_from_ifc_data(data) body = ifcopenshell.util.representation.get_representation(element, "Model", "Body", "MODEL_VIEW") - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, diff --git a/src/bonsai/bonsai/bim/module/model/workspace.py b/src/bonsai/bonsai/bim/module/model/workspace.py index 15cea70293..11ea847df1 100644 --- a/src/bonsai/bonsai/bim/module/model/workspace.py +++ b/src/bonsai/bonsai/bim/module/model/workspace.py @@ -18,14 +18,14 @@ import os import bpy -import blenderbim.tool as tool -import blenderbim.core.model as core -from blenderbim.bim.module.model.wall import DumbWallJoiner -from blenderbim.bim.helper import prop_with_search +import bonsai.tool as tool +import bonsai.core.model as core +from bonsai.bim.module.model.wall import DumbWallJoiner +from bonsai.bim.helper import prop_with_search from bpy.types import WorkSpaceTool -from blenderbim.bim.module.model.data import AuthoringData -from blenderbim.bim.module.system.data import PortData -from blenderbim.bim.module.model.prop import get_ifc_class +from bonsai.bim.module.model.data import AuthoringData +from bonsai.bim.module.system.data import PortData +from bonsai.bim.module.model.prop import get_ifc_class class BimTool(WorkSpaceTool): diff --git a/src/bonsai/bonsai/bim/module/nest/data.py b/src/bonsai/bonsai/bim/module/nest/data.py index fcaa2ec0e8..77ec0d020f 100644 --- a/src/bonsai/bonsai/bim/module/nest/data.py +++ b/src/bonsai/bonsai/bim/module/nest/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell.util.element diff --git a/src/bonsai/bonsai/bim/module/nest/operator.py b/src/bonsai/bonsai/bim/module/nest/operator.py index 67253d25b3..96f7930bcd 100644 --- a/src/bonsai/bonsai/bim/module/nest/operator.py +++ b/src/bonsai/bonsai/bim/module/nest/operator.py @@ -19,11 +19,9 @@ import bpy import ifcopenshell import ifcopenshell.util.element -import blenderbim.tool as tool -import blenderbim.core.nest as core -import blenderbim.core.spatial -import blenderbim.bim.handler -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.nest as core +from bonsai.bim.ifc import IfcStore class BIM_OT_nest_assign_object(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/nest/prop.py b/src/bonsai/bonsai/bim/module/nest/prop.py index 56c4ea7a79..fafb75fbb5 100644 --- a/src/bonsai/bonsai/bim/module/nest/prop.py +++ b/src/bonsai/bonsai/bim/module/nest/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.spatial.data import SpatialData +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.spatial.data import SpatialData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/nest/ui.py b/src/bonsai/bonsai/bim/module/nest/ui.py index 9184205c92..b1983a2411 100644 --- a/src/bonsai/bonsai/bim/module/nest/ui.py +++ b/src/bonsai/bonsai/bim/module/nest/ui.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . from bpy.types import Panel -from blenderbim.bim.module.nest.data import NestData -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.module.nest.data import NestData +from bonsai.bim.ifc import IfcStore class BIM_PT_nest(Panel): diff --git a/src/bonsai/bonsai/bim/module/owner/data.py b/src/bonsai/bonsai/bim/module/owner/data.py index 1285d73621..01273e7f65 100644 --- a/src/bonsai/bonsai/bim/module/owner/data.py +++ b/src/bonsai/bonsai/bim/module/owner/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/owner/operator.py b/src/bonsai/bonsai/bim/module/owner/operator.py index dd177dcea4..4a4a014a9e 100644 --- a/src/bonsai/bonsai/bim/module/owner/operator.py +++ b/src/bonsai/bonsai/bim/module/owner/operator.py @@ -17,10 +17,8 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool -import blenderbim.core.owner as core -import blenderbim.bim.handler -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.owner as core class EnableEditingPerson(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/owner/prop.py b/src/bonsai/bonsai/bim/module/owner/prop.py index a65d5d2e8c..26794d2aaa 100644 --- a/src/bonsai/bonsai/bim/module/owner/prop.py +++ b/src/bonsai/bonsai/bim/module/owner/prop.py @@ -18,9 +18,9 @@ import bpy from ifcopenshell.util.doc import get_entity_doc -import blenderbim.tool as tool -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.owner.data import OwnerData, ActorData, ObjectActorData +import bonsai.tool as tool +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.owner.data import OwnerData, ActorData, ObjectActorData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/owner/ui.py b/src/bonsai/bonsai/bim/module/owner/ui.py index 2a12a37297..6557dd04ca 100644 --- a/src/bonsai/bonsai/bim/module/owner/ui.py +++ b/src/bonsai/bonsai/bim/module/owner/ui.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper -import blenderbim.tool as tool -from blenderbim.bim.module.owner.data import PeopleData, OrganisationsData, OwnerData, ActorData, ObjectActorData +import bonsai.bim.helper +import bonsai.tool as tool +from bonsai.bim.module.owner.data import PeopleData, OrganisationsData, OwnerData, ActorData, ObjectActorData def draw_roles(box, parent): @@ -33,7 +33,7 @@ def draw_roles(box, parent): row = box.row(align=True) row.operator("bim.edit_role", icon="CHECKMARK") row.operator("bim.disable_editing_role", icon="CANCEL", text="") - blenderbim.bim.helper.draw_attributes(role["props"], box) + bonsai.bim.helper.draw_attributes(role["props"], box) else: row = box.row(align=True) row.label(text=role["label"]) @@ -56,7 +56,7 @@ def draw_addresses(box, parent): row = box.row(align=True) row.operator("bim.edit_address", icon="CHECKMARK") row.operator("bim.disable_editing_address", icon="CANCEL", text="") - blenderbim.bim.helper.draw_attributes(address["props"], box) + bonsai.bim.helper.draw_attributes(address["props"], box) for attribute in address["list_attributes"]: row = box.row(align=True) row.label(text=attribute["name"]) @@ -108,7 +108,7 @@ class BIM_PT_people(bpy.types.Panel): row = box.row(align=True) row.operator("bim.edit_person", icon="CHECKMARK") row.operator("bim.disable_editing_person", icon="CANCEL", text="") - blenderbim.bim.helper.draw_attributes(person["props"], box) + bonsai.bim.helper.draw_attributes(person["props"], box) for attribute in person["list_attributes"]: row = box.row(align=True) @@ -167,7 +167,7 @@ class BIM_PT_organisations(bpy.types.Panel): row = box.row(align=True) row.operator("bim.edit_organisation", icon="CHECKMARK") row.operator("bim.disable_editing_organisation", icon="CANCEL", text="") - blenderbim.bim.helper.draw_attributes(organisation["props"], box) + bonsai.bim.helper.draw_attributes(organisation["props"], box) draw_roles(box, organisation) draw_addresses(box, organisation) @@ -274,7 +274,7 @@ class BIM_PT_actor(bpy.types.Panel): row = box.row(align=True) row.operator("bim.edit_actor", icon="CHECKMARK") row.operator("bim.disable_editing_actor", icon="CANCEL", text="") - blenderbim.bim.helper.draw_attributes(self.props.actor_attributes, box) + bonsai.bim.helper.draw_attributes(self.props.actor_attributes, box) else: row = self.layout.row(align=True) row.label(text=actor["name"], icon="USER") diff --git a/src/bonsai/bonsai/bim/module/patch/operator.py b/src/bonsai/bonsai/bim/module/patch/operator.py index 5aeb1864fc..60876c4d4d 100644 --- a/src/bonsai/bonsai/bim/module/patch/operator.py +++ b/src/bonsai/bonsai/bim/module/patch/operator.py @@ -20,9 +20,9 @@ import os import bpy import json import ifcopenshell -import blenderbim.tool as tool -import blenderbim.core.patch as core -import blenderbim.bim.handler +import bonsai.tool as tool +import bonsai.core.patch as core +import bonsai.bim.handler from pathlib import Path try: @@ -187,5 +187,5 @@ class RunMigratePatch(bpy.types.Operator): bpy.ops.file.refresh() except: pass # Probably running in headless mode - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} diff --git a/src/bonsai/bonsai/bim/module/patch/prop.py b/src/bonsai/bonsai/bim/module/patch/prop.py index 8266137456..2893570628 100644 --- a/src/bonsai/bonsai/bim/module/patch/prop.py +++ b/src/bonsai/bonsai/bim/module/patch/prop.py @@ -21,7 +21,7 @@ import importlib import importlib.util from pathlib import Path import ifcpatch -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/patch/ui.py b/src/bonsai/bonsai/bim/module/patch/ui.py index 958387b313..e50b35e8fa 100644 --- a/src/bonsai/bonsai/bim/module/patch/ui.py +++ b/src/bonsai/bonsai/bim/module/patch/ui.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.helper import draw_attributes +import bonsai.tool as tool +from bonsai.bim.helper import prop_with_search +from bonsai.bim.helper import draw_attributes class BIM_PT_patch(bpy.types.Panel): diff --git a/src/bonsai/bonsai/bim/module/profile/data.py b/src/bonsai/bonsai/bim/module/profile/data.py index ed2c812084..2402192aad 100644 --- a/src/bonsai/bonsai/bim/module/profile/data.py +++ b/src/bonsai/bonsai/bim/module/profile/data.py @@ -20,7 +20,7 @@ import bpy import bpy.utils import bpy.utils.previews import ifcopenshell.util.doc -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/profile/operator.py b/src/bonsai/bonsai/bim/module/profile/operator.py index 4500968734..432f137b1c 100644 --- a/src/bonsai/bonsai/bim/module/profile/operator.py +++ b/src/bonsai/bonsai/bim/module/profile/operator.py @@ -18,13 +18,13 @@ import bpy import ifcopenshell.api -import blenderbim.bim.helper -import blenderbim.tool as tool -import blenderbim.bim.module.model.profile as model_profile -import blenderbim.core.profile as core -from blenderbim.bim.module.model.decorator import ProfileDecorator -from blenderbim.bim.module.profile.prop import generate_thumbnail_for_active_profile -from blenderbim.bim.module.profile.data import refresh +import bonsai.bim.helper +import bonsai.tool as tool +import bonsai.bim.module.model.profile as model_profile +import bonsai.core.profile as core +from bonsai.bim.module.model.decorator import ProfileDecorator +from bonsai.bim.module.profile.prop import generate_thumbnail_for_active_profile +from bonsai.bim.module.profile.data import refresh class LoadProfiles(bpy.types.Operator): @@ -85,7 +85,7 @@ class EnableEditingProfile(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): props = context.scene.BIMProfileProperties props.profile_attributes.clear() - blenderbim.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.profile), props.profile_attributes) + bonsai.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.profile), props.profile_attributes) props.active_profile_id = self.profile @@ -107,7 +107,7 @@ class EditProfile(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): props = context.scene.BIMProfileProperties - attributes = blenderbim.bim.helper.export_attributes(props.profile_attributes) + attributes = bonsai.bim.helper.export_attributes(props.profile_attributes) profile = tool.Ifc.get().by_id(props.active_profile_id) ifcopenshell.api.run("profile.edit_profile", tool.Ifc.get(), profile=profile, attributes=attributes) model_profile.DumbProfileRegenerator().regenerate_from_profile_def(profile) diff --git a/src/bonsai/bonsai/bim/module/profile/prop.py b/src/bonsai/bonsai/bim/module/profile/prop.py index bfec656858..afe21b1446 100644 --- a/src/bonsai/bonsai/bim/module/profile/prop.py +++ b/src/bonsai/bonsai/bim/module/profile/prop.py @@ -20,10 +20,10 @@ import bpy import ifcopenshell import ifcopenshell.util.schema import ifcopenshell.util.attribute -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.profile.data import ProfileData +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.profile.data import ProfileData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/profile/ui.py b/src/bonsai/bonsai/bim/module/profile/ui.py index 7270c84bd1..56c5aefe96 100644 --- a/src/bonsai/bonsai/bim/module/profile/ui.py +++ b/src/bonsai/bonsai/bim/module/profile/ui.py @@ -17,11 +17,11 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper -import blenderbim.tool as tool +import bonsai.bim.helper +import bonsai.tool as tool from bpy.types import Panel, UIList -from blenderbim.bim.module.profile.data import ProfileData -from blenderbim.bim.module.profile.prop import generate_thumbnail_for_active_profile +from bonsai.bim.module.profile.data import ProfileData +from bonsai.bim.module.profile.prop import generate_thumbnail_for_active_profile class BIM_PT_profiles(Panel): @@ -102,7 +102,7 @@ class BIM_PT_profiles(Panel): self.draw_editable_ui(context) def draw_editable_ui(self, context): - blenderbim.bim.helper.draw_attributes(self.props.profile_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.profile_attributes, self.layout) class BIM_UL_profiles(UIList): diff --git a/src/bonsai/bonsai/bim/module/project/data.py b/src/bonsai/bonsai/bim/module/project/data.py index 57ff9c099e..5ecde84f0b 100644 --- a/src/bonsai/bonsai/bim/module/project/data.py +++ b/src/bonsai/bonsai/bim/module/project/data.py @@ -18,8 +18,8 @@ import os import bpy -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore def refresh(): diff --git a/src/bonsai/bonsai/bim/module/project/decorator.py b/src/bonsai/bonsai/bim/module/project/decorator.py index 55dadec971..d9912d51a7 100644 --- a/src/bonsai/bonsai/bim/module/project/decorator.py +++ b/src/bonsai/bonsai/bim/module/project/decorator.py @@ -19,7 +19,7 @@ import gpu import bpy import bmesh -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import SpaceView3D from mathutils import Vector from gpu_extras.batch import batch_for_shader diff --git a/src/bonsai/bonsai/bim/module/project/operator.py b/src/bonsai/bonsai/bim/module/project/operator.py index a9d9959ab2..e528fc41f4 100644 --- a/src/bonsai/bonsai/bim/module/project/operator.py +++ b/src/bonsai/bonsai/bim/module/project/operator.py @@ -36,25 +36,22 @@ import ifcopenshell.util.element import ifcopenshell.util.representation import ifcopenshell.util.shape import ifcopenshell.util.unit -import blenderbim.bim.handler -import blenderbim.bim.schema -import blenderbim.tool as tool -import blenderbim.core.project as core -import blenderbim.core.context -import blenderbim.core.owner -import blenderbim.core.spatial -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.ui import IFCFileSelector -from blenderbim.bim import import_ifc -from blenderbim.bim import export_ifc +import bonsai.bim.handler +import bonsai.bim.schema +import bonsai.tool as tool +import bonsai.core.project as core +from bonsai.bim.ifc import IfcStore +from bonsai.bim.ui import IFCFileSelector +from bonsai.bim import import_ifc +from bonsai.bim import export_ifc from collections import defaultdict from math import radians from pathlib import Path from mathutils import Vector, Matrix from bpy.app.handlers import persistent from ifcopenshell.geom import ShapeElementType -from blenderbim.bim.module.project.data import LinksData -from blenderbim.bim.module.project.decorator import ProjectDecorator, ClippingPlaneDecorator +from bonsai.bim.module.project.data import LinksData +from bonsai.bim.module.project.decorator import ProjectDecorator, ClippingPlaneDecorator from typing import Union @@ -130,7 +127,7 @@ class CreateProject(bpy.types.Operator): core.create_project( tool.Ifc, tool.Georeference, tool.Project, tool.Spatial, schema=props.export_schema, template=template ) - blenderbim.bim.schema.reload(tool.Ifc.get().schema_identifier) + bonsai.bim.schema.reload(tool.Ifc.get().schema_identifier) tool.Blender.register_toolbar() def rollback(self, data): @@ -467,7 +464,7 @@ class AppendLibraryElement(bpy.types.Operator): except: # TODO Remove this terrible code when I refactor this into the core pass - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} def import_material_from_ifc(self, element: ifcopenshell.entity_instance, context: bpy.types.Context) -> None: @@ -746,7 +743,7 @@ class LoadProject(bpy.types.Operator, IFCFileSelector): if not self.should_start_fresh_session: bpy.ops.bim.convert_to_blender() except: - blenderbim.last_error = traceback.format_exc() + bonsai.last_error = traceback.format_exc() raise return {"FINISHED"} @@ -797,7 +794,7 @@ class LoadProjectElements(bpy.types.Operator): def execute(self, context): self.props = context.scene.BIMProjectProperties self.file = IfcStore.get_file() - blenderbim.bim.schema.reload(self.file.schema_identifier) + bonsai.bim.schema.reload(self.file.schema_identifier) start = time.time() logger = logging.getLogger("ImportIFC") path_log = os.path.join(context.scene.BIMProperties.data_dir, "process.log") @@ -1321,7 +1318,7 @@ class ExportIFCBase: if save_blend_file: bpy.ops.wm.save_mainfile(filepath=bpy.data.filepath) bpy.context.scene.BIMProperties.is_dirty = False - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() self.report( {"INFO"}, f'IFC Project "{os.path.basename(output_file)}" {"" if not save_blend_file else "And Current Blend File Are"} Saved', @@ -1854,7 +1851,7 @@ class AppendInspectedLinkedElement(AppendLibraryElement): bl_options = {"REGISTER"} def _execute(self, context): - from blenderbim.bim.module.project.data import LinksData + from bonsai.bim.module.project.data import LinksData if not LinksData.linked_data: self.report({"INFO"}, "No linked element found.") diff --git a/src/bonsai/bonsai/bim/module/project/prop.py b/src/bonsai/bonsai/bim/module/project/prop.py index eb382b4f2a..340ffcb85f 100644 --- a/src/bonsai/bonsai/bim/module/project/prop.py +++ b/src/bonsai/bonsai/bim/module/project/prop.py @@ -20,9 +20,9 @@ import os import bpy import ifcopenshell.util.element import ifcopenshell.util.placement -from blenderbim.bim.module.project.data import ProjectData -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.prop import StrProperty, ObjProperty +from bonsai.bim.module.project.data import ProjectData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.prop import StrProperty, ObjProperty from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/project/ui.py b/src/bonsai/bonsai/bim/module/project/ui.py index bf85457d8b..6e5ecff68e 100644 --- a/src/bonsai/bonsai/bim/module/project/ui.py +++ b/src/bonsai/bonsai/bim/module/project/ui.py @@ -17,12 +17,12 @@ # along with Bonsai. If not, see . import os -import blenderbim.bim -import blenderbim.tool as tool -from blenderbim.bim.helper import prop_with_search +import bonsai.bim +import bonsai.tool as tool +from bonsai.bim.helper import prop_with_search from bpy.types import Panel, Menu, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.project.data import ProjectData, LinksData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.project.data import ProjectData, LinksData def file_import_menu(self, context): @@ -53,9 +53,7 @@ class BIM_MT_recent_projects(Menu): return for path in paths: - op = self.layout.operator( - "bim.load_project", text=path.name, icon_value=blenderbim.bim.icons["IFC"].icon_id - ) + op = self.layout.operator("bim.load_project", text=path.name, icon_value=bonsai.bim.icons["IFC"].icon_id) op.filepath = str(path) op.should_start_fresh_session = True op.use_detailed_tooltip = True @@ -76,7 +74,7 @@ class BIM_MT_new_project(Menu): # Do we need to set it back to exec default? # self.layout.operator_context = "EXEC_DEFAULT" self.layout.separator() - self.layout.label(text="New IFC Project", icon_value=blenderbim.bim.icons["IFC"].icon_id) + self.layout.label(text="New IFC Project", icon_value=bonsai.bim.icons["IFC"].icon_id) self.layout.operator("bim.new_project", text="Metric (m) Project").preset = "metric_m" self.layout.operator("bim.new_project", text="Metric (mm) Project").preset = "metric_mm" self.layout.operator("bim.new_project", text="Imperial (ft) Project").preset = "imperial_ft" diff --git a/src/bonsai/bonsai/bim/module/project/workspace.py b/src/bonsai/bonsai/bim/module/project/workspace.py index 8aaffb37ce..3178e82486 100644 --- a/src/bonsai/bonsai/bim/module/project/workspace.py +++ b/src/bonsai/bonsai/bim/module/project/workspace.py @@ -18,9 +18,9 @@ import os import bpy -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import WorkSpaceTool -from blenderbim.bim.module.project.data import LinksData +from bonsai.bim.module.project.data import LinksData class ExploreTool(bpy.types.WorkSpaceTool): diff --git a/src/bonsai/bonsai/bim/module/pset/data.py b/src/bonsai/bonsai/bim/module/pset/data.py index 76e652943e..c0a19f7bf0 100644 --- a/src/bonsai/bonsai/bim/module/pset/data.py +++ b/src/bonsai/bonsai/bim/module/pset/data.py @@ -20,8 +20,8 @@ import bpy import ifcopenshell import ifcopenshell.util.doc import ifcopenshell.util.element -import blenderbim.tool as tool -import blenderbim.bim.schema +import bonsai.tool as tool +import bonsai.bim.schema # TODO: Should this cache belong here? Dunno. Maybe. @@ -106,7 +106,7 @@ class ObjectPsetsData(Data): element = tool.Ifc.get_entity(obj) if not element: return [] - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable( + psets = bonsai.bim.schema.ifc.psetqto.get_applicable( element.is_a(), ifcopenshell.util.element.get_predefined_type(element), pset_only=True ) psetnames = cls.format_pset_enum(psets) @@ -119,7 +119,7 @@ class ObjectPsetsData(Data): element = tool.Ifc.get_entity(obj) if not element: return [] - qtos = blenderbim.bim.schema.ifc.psetqto.get_applicable( + qtos = bonsai.bim.schema.ifc.psetqto.get_applicable( element.is_a(), ifcopenshell.util.element.get_predefined_type(element), qto_only=True ) return cls.format_pset_enum(qtos) @@ -178,7 +178,7 @@ class MaterialPsetsData(Data): if material.ifc_definition_id: material = tool.Ifc.get().by_id(material.ifc_definition_id) category = getattr(material, "Category", None) or None - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable("IfcMaterial", category, pset_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable("IfcMaterial", category, pset_only=True) psetnames = cls.format_pset_enum(psets) assigned_names = ifcopenshell.util.element.get_psets( material, psets_only=True, should_inherit=False diff --git a/src/bonsai/bonsai/bim/module/pset/operator.py b/src/bonsai/bonsai/bim/module/pset/operator.py index 228afa555d..e417de2063 100644 --- a/src/bonsai/bonsai/bim/module/pset/operator.py +++ b/src/bonsai/bonsai/bim/module/pset/operator.py @@ -23,13 +23,11 @@ import ifcopenshell.util.attribute import ifcopenshell.util.element import ifcopenshell.util.pset import ifcopenshell.util.unit -import blenderbim.bim.schema -import blenderbim.bim.helper -import blenderbim.bim.handler -import blenderbim.tool as tool -import blenderbim.core.pset as core -import blenderbim.bim.module.pset.data -from blenderbim.bim.ifc import IfcStore +import bonsai.bim.schema +import bonsai.tool as tool +import bonsai.core.pset as core +import bonsai.bim.module.pset.data +from bonsai.bim.ifc import IfcStore class TogglePsetExpansion(bpy.types.Operator, tool.Ifc.Operator): @@ -38,8 +36,8 @@ class TogglePsetExpansion(bpy.types.Operator, tool.Ifc.Operator): pset_id: bpy.props.IntProperty() def _execute(self, context): - blenderbim.bim.module.pset.data.is_expanded[self.pset_id] = ( - not blenderbim.bim.module.pset.data.is_expanded.setdefault(self.pset_id, True) + bonsai.bim.module.pset.data.is_expanded[self.pset_id] = not bonsai.bim.module.pset.data.is_expanded.setdefault( + self.pset_id, True ) @@ -130,7 +128,7 @@ class EditPset(bpy.types.Operator, tool.Ifc.Operator): pset=pset, name=props.active_pset_name, properties=properties, - pset_template=blenderbim.bim.schema.ifc.psetqto.get_by_name(props.active_pset_name), + pset_template=bonsai.bim.schema.ifc.psetqto.get_by_name(props.active_pset_name), ) else: for key, value in properties.items(): diff --git a/src/bonsai/bonsai/bim/module/pset/prop.py b/src/bonsai/bonsai/bim/module/pset/prop.py index e8b4236dda..64ce366ca8 100644 --- a/src/bonsai/bonsai/bim/module/pset/prop.py +++ b/src/bonsai/bonsai/bim/module/pset/prop.py @@ -17,15 +17,15 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.schema +import bonsai.bim.schema import ifcopenshell import ifcopenshell.util.attribute import ifcopenshell.util.doc import ifcopenshell.util.element -import blenderbim.tool as tool -from blenderbim.bim.prop import Attribute, StrProperty -from blenderbim.bim.module.pset.data import AddEditCustomPropertiesData, ObjectPsetsData, MaterialPsetsData -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +from bonsai.bim.prop import Attribute, StrProperty +from bonsai.bim.module.pset.data import AddEditCustomPropertiesData, ObjectPsetsData, MaterialPsetsData +from bonsai.bim.ifc import IfcStore from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, @@ -105,7 +105,7 @@ def get_material_set_pset_names(self, context): return [] ifc_class = material.is_a() if ifc_class not in psetnames: - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) psetnames[ifc_class] = blender_formatted_enum_from_psets(psets) return psetnames[ifc_class] @@ -117,7 +117,7 @@ def get_material_set_item_pset_names(self, context): return [] ifc_class = tool.Ifc.get().by_id(ifc_definition_id).is_a() if ifc_class not in psetnames: - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) psetnames[ifc_class] = blender_formatted_enum_from_psets(psets) return psetnames[ifc_class] @@ -126,7 +126,7 @@ def get_task_qto_names(self, context): global qtonames ifc_class = "IfcTask" if ifc_class not in qtonames: - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable(ifc_class, qto_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable(ifc_class, qto_only=True) qtonames[ifc_class] = blender_formatted_enum_from_psets(psets) return qtonames[ifc_class] @@ -137,7 +137,7 @@ def get_resource_pset_names(self, context): rtprops = context.scene.BIMResourceTreeProperties ifc_class = IfcStore.get_file().by_id(rtprops.resources[rprops.active_resource_index].ifc_definition_id).is_a() if ifc_class not in psetnames: - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) psetnames[ifc_class] = blender_formatted_enum_from_psets(psets) return psetnames[ifc_class] @@ -148,7 +148,7 @@ def get_resource_qto_names(self, context): rtprops = context.scene.BIMResourceTreeProperties ifc_class = IfcStore.get_file().by_id(rtprops.resources[rprops.active_resource_index].ifc_definition_id).is_a() if ifc_class not in qtonames: - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable(ifc_class, qto_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable(ifc_class, qto_only=True) qtonames[ifc_class] = blender_formatted_enum_from_psets(psets) return qtonames[ifc_class] @@ -157,7 +157,7 @@ def get_group_pset_names(self, context): global psetnames ifc_class = "IfcGroup" if ifc_class not in psetnames: - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) psetnames[ifc_class] = blender_formatted_enum_from_psets(psets) return psetnames[ifc_class] @@ -166,7 +166,7 @@ def get_group_qto_names(self, context): global qtonames ifc_class = "IfcGroup" if ifc_class not in qtonames: - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable(ifc_class, qto_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable(ifc_class, qto_only=True) qtonames[ifc_class] = blender_formatted_enum_from_psets(psets) return qtonames[ifc_class] @@ -176,7 +176,7 @@ def get_profile_pset_names(self, context): pprops = context.scene.BIMProfileProperties ifc_class = IfcStore.get_file().by_id(pprops.profiles[pprops.active_profile_index].ifc_definition_id).is_a() if ifc_class not in psetnames: - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) psetnames[ifc_class] = blender_formatted_enum_from_psets(psets) return psetnames[ifc_class] @@ -185,7 +185,7 @@ def get_work_schedule_pset_names(self, context): global psetnames ifc_class = "IfcWorkSchedule" if ifc_class not in psetnames: - psets = blenderbim.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) + psets = bonsai.bim.schema.ifc.psetqto.get_applicable(ifc_class, pset_only=True) psetnames[ifc_class] = blender_formatted_enum_from_psets(psets) return psetnames[ifc_class] diff --git a/src/bonsai/bonsai/bim/module/pset/ui.py b/src/bonsai/bonsai/bim/module/pset/ui.py index 3b10d5ecc4..716c51e0fc 100644 --- a/src/bonsai/bonsai/bim/module/pset/ui.py +++ b/src/bonsai/bonsai/bim/module/pset/ui.py @@ -17,11 +17,11 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import Panel -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.module.pset.data import ( +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import prop_with_search +from bonsai.bim.module.pset.data import ( ObjectPsetsData, ObjectQtosData, MaterialPsetsData, diff --git a/src/bonsai/bonsai/bim/module/pset_template/data.py b/src/bonsai/bonsai/bim/module/pset_template/data.py index d1ce09699f..ce9917f38b 100644 --- a/src/bonsai/bonsai/bim/module/pset_template/data.py +++ b/src/bonsai/bonsai/bim/module/pset_template/data.py @@ -22,8 +22,8 @@ import pathlib import ifcopenshell import ifcopenshell.util.attribute import ifcopenshell.util.doc -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore def refresh(): diff --git a/src/bonsai/bonsai/bim/module/pset_template/operator.py b/src/bonsai/bonsai/bim/module/pset_template/operator.py index 78ea15d8ce..0b82bf746b 100644 --- a/src/bonsai/bonsai/bim/module/pset_template/operator.py +++ b/src/bonsai/bonsai/bim/module/pset_template/operator.py @@ -20,10 +20,10 @@ import os import bpy import ifcopenshell import ifcopenshell.api -import blenderbim.bim.schema -import blenderbim.bim.handler -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.bim.schema +import bonsai.bim.handler +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore from typing import final @@ -38,7 +38,7 @@ class PsetTemplateOperator: IfcStore.pset_template_file.end_transaction() IfcStore.add_transaction_operation(self) IfcStore.end_transaction(self) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} def rollback(self, data): @@ -71,8 +71,8 @@ class AddPsetTemplateFile(bpy.types.Operator): ifcopenshell.api.run("pset_template.add_prop_template", template, pset_template=pset_template) template.write(filepath) self.props.new_template_filename = "" - blenderbim.bim.handler.refresh_ui_data() - blenderbim.bim.schema.reload(tool.Ifc.get().schema) + bonsai.bim.handler.refresh_ui_data() + bonsai.bim.schema.reload(tool.Ifc.get().schema) context.scene.BIMPsetTemplateProperties.pset_template_files = filepath return {"FINISHED"} @@ -86,8 +86,8 @@ class AddPsetTemplate(bpy.types.Operator, PsetTemplateOperator): template = ifcopenshell.api.run("pset_template.add_pset_template", IfcStore.pset_template_file) ifcopenshell.api.run("pset_template.add_prop_template", IfcStore.pset_template_file, pset_template=template) IfcStore.pset_template_file.write(IfcStore.pset_template_path) - blenderbim.bim.handler.refresh_ui_data() - blenderbim.bim.schema.reload(tool.Ifc.get().schema) + bonsai.bim.handler.refresh_ui_data() + bonsai.bim.schema.reload(tool.Ifc.get().schema) context.scene.BIMPsetTemplateProperties.pset_templates = str(template.id()) @@ -106,8 +106,8 @@ class RemovePsetTemplate(bpy.types.Operator, PsetTemplateOperator): **{"pset_template": IfcStore.pset_template_file.by_id(int(props.pset_templates))} ) IfcStore.pset_template_file.write(IfcStore.pset_template_path) - blenderbim.bim.handler.refresh_ui_data() - blenderbim.bim.schema.reload(tool.Ifc.get().schema) + bonsai.bim.handler.refresh_ui_data() + bonsai.bim.schema.reload(tool.Ifc.get().schema) class EnableEditingPsetTemplate(bpy.types.Operator): @@ -220,8 +220,8 @@ class EditPsetTemplate(bpy.types.Operator, PsetTemplateOperator): ) bpy.ops.bim.disable_editing_pset_template() IfcStore.pset_template_file.write(IfcStore.pset_template_path) - blenderbim.bim.handler.refresh_ui_data() - blenderbim.bim.schema.reload(tool.Ifc.get().schema) + bonsai.bim.handler.refresh_ui_data() + bonsai.bim.schema.reload(tool.Ifc.get().schema) class SavePsetTemplateFile(bpy.types.Operator): @@ -230,8 +230,8 @@ class SavePsetTemplateFile(bpy.types.Operator): def execute(self, context): IfcStore.pset_template_file.write(IfcStore.pset_template_path) - blenderbim.bim.handler.refresh_ui_data() - blenderbim.bim.schema.reload(tool.Ifc.get().schema) + bonsai.bim.handler.refresh_ui_data() + bonsai.bim.schema.reload(tool.Ifc.get().schema) return {"FINISHED"} @@ -244,8 +244,8 @@ class RemovePsetTemplateFile(bpy.types.Operator): os.remove(IfcStore.pset_template_path) except: pass - blenderbim.bim.handler.refresh_ui_data() - blenderbim.bim.schema.reload(tool.Ifc.get().schema) + bonsai.bim.handler.refresh_ui_data() + bonsai.bim.schema.reload(tool.Ifc.get().schema) return {"FINISHED"} @@ -264,8 +264,8 @@ class AddPropTemplate(bpy.types.Operator, PsetTemplateOperator): ) bpy.ops.bim.disable_editing_prop_template() IfcStore.pset_template_file.write(IfcStore.pset_template_path) - blenderbim.bim.handler.refresh_ui_data() - blenderbim.bim.schema.reload(tool.Ifc.get().schema) + bonsai.bim.handler.refresh_ui_data() + bonsai.bim.schema.reload(tool.Ifc.get().schema) class RemovePropTemplate(bpy.types.Operator, PsetTemplateOperator): @@ -281,8 +281,8 @@ class RemovePropTemplate(bpy.types.Operator, PsetTemplateOperator): **{"prop_template": IfcStore.pset_template_file.by_id(self.prop_template)} ) IfcStore.pset_template_file.write(IfcStore.pset_template_path) - blenderbim.bim.handler.refresh_ui_data() - blenderbim.bim.schema.reload(tool.Ifc.get().schema) + bonsai.bim.handler.refresh_ui_data() + bonsai.bim.schema.reload(tool.Ifc.get().schema) class EditPropTemplate(bpy.types.Operator, PsetTemplateOperator): @@ -312,6 +312,6 @@ class EditPropTemplate(bpy.types.Operator, PsetTemplateOperator): ) bpy.ops.bim.disable_editing_prop_template() IfcStore.pset_template_file.write(IfcStore.pset_template_path) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() if tool.Ifc.get(): - blenderbim.bim.schema.reload(tool.Ifc.get().schema) + bonsai.bim.schema.reload(tool.Ifc.get().schema) diff --git a/src/bonsai/bonsai/bim/module/pset_template/prop.py b/src/bonsai/bonsai/bim/module/pset_template/prop.py index e0c177f816..c01974461e 100644 --- a/src/bonsai/bonsai/bim/module/pset_template/prop.py +++ b/src/bonsai/bonsai/bim/module/pset_template/prop.py @@ -20,9 +20,9 @@ import os import bpy import ifcopenshell from ifcopenshell.util.doc import get_attribute_doc -from blenderbim.bim.module.pset_template.data import PsetTemplatesData -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.module.pset_template.data import PsetTemplatesData +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.ifc import IfcStore from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/pset_template/ui.py b/src/bonsai/bonsai/bim/module/pset_template/ui.py index 4a0778e604..ef9870338f 100644 --- a/src/bonsai/bonsai/bim/module/pset_template/ui.py +++ b/src/bonsai/bonsai/bim/module/pset_template/ui.py @@ -18,8 +18,8 @@ import bpy from bpy.types import Panel -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.module.pset_template.data import PsetTemplatesData +from bonsai.bim.helper import prop_with_search +from bonsai.bim.module.pset_template.data import PsetTemplatesData class BIM_PT_pset_template(Panel): diff --git a/src/bonsai/bonsai/bim/module/qto/calculator.py b/src/bonsai/bonsai/bim/module/qto/calculator.py index c323e33311..8380b92d07 100644 --- a/src/bonsai/bonsai/bim/module/qto/calculator.py +++ b/src/bonsai/bonsai/bim/module/qto/calculator.py @@ -20,7 +20,7 @@ import bpy import math import bmesh import mathutils -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell import ifcopenshell.geom import ifcopenshell.util.element diff --git a/src/bonsai/bonsai/bim/module/qto/data.py b/src/bonsai/bonsai/bim/module/qto/data.py index af62a5c97e..ef780d749f 100644 --- a/src/bonsai/bonsai/bim/module/qto/data.py +++ b/src/bonsai/bonsai/bim/module/qto/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/qto/operator.py b/src/bonsai/bonsai/bim/module/qto/operator.py index b92e3bab74..6af6cfccb2 100644 --- a/src/bonsai/bonsai/bim/module/qto/operator.py +++ b/src/bonsai/bonsai/bim/module/qto/operator.py @@ -19,10 +19,10 @@ import bpy import ifcopenshell import ifcopenshell.api -import blenderbim.tool as tool -import blenderbim.core.qto as core -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.qto import helper +import bonsai.tool as tool +import bonsai.core.qto as core +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.qto import helper class CalculateCircleRadius(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/qto/prop.py b/src/bonsai/bonsai/bim/module/qto/prop.py index ecfb1d2643..97e7f86d81 100644 --- a/src/bonsai/bonsai/bim/module/qto/prop.py +++ b/src/bonsai/bonsai/bim/module/qto/prop.py @@ -18,7 +18,7 @@ import bpy import ifc5d.qto -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/qto/ui.py b/src/bonsai/bonsai/bim/module/qto/ui.py index 2ffd51ead5..ffd6a4f10a 100644 --- a/src/bonsai/bonsai/bim/module/qto/ui.py +++ b/src/bonsai/bonsai/bim/module/qto/ui.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.module.qto.data import QtoData +from bonsai.bim.module.qto.data import QtoData class BIM_PT_qto(bpy.types.Panel): diff --git a/src/bonsai/bonsai/bim/module/resource/data.py b/src/bonsai/bonsai/bim/module/resource/data.py index 54cbce832b..2d43974569 100644 --- a/src/bonsai/bonsai/bim/module/resource/data.py +++ b/src/bonsai/bonsai/bim/module/resource/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell import ifcopenshell.util.constraint import ifcopenshell.util.cost diff --git a/src/bonsai/bonsai/bim/module/resource/operator.py b/src/bonsai/bonsai/bim/module/resource/operator.py index 9fd14ece1c..feff57030f 100644 --- a/src/bonsai/bonsai/bim/module/resource/operator.py +++ b/src/bonsai/bonsai/bim/module/resource/operator.py @@ -18,9 +18,9 @@ import bpy from bpy_extras.io_utils import ImportHelper -from blenderbim.bim.module.resource.ui import draw_productivity_ui -import blenderbim.core.resource as core -import blenderbim.tool as tool +from bonsai.bim.module.resource.ui import draw_productivity_ui +import bonsai.core.resource as core +import bonsai.tool as tool class LoadResources(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/resource/prop.py b/src/bonsai/bonsai/bim/module/resource/prop.py index b696b5013f..8613f44d1a 100644 --- a/src/bonsai/bonsai/bim/module/resource/prop.py +++ b/src/bonsai/bonsai/bim/module/resource/prop.py @@ -19,12 +19,12 @@ import bpy import ifcopenshell.api import ifcopenshell.util.resource -from blenderbim.bim.ifc import IfcStore -import blenderbim.tool as tool -import blenderbim.bim.module.pset.data -import blenderbim.bim.module.resource.data -import blenderbim.bim.module.sequence.data -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.bim.module.pset.data +import bonsai.bim.module.resource.data +import bonsai.bim.module.sequence.data +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, @@ -61,7 +61,7 @@ def updateResourceName(self, context): if props.active_resource_id == self.ifc_definition_id: attribute = props.resource_attributes.get("Name") attribute.string_value = self.name - blenderbim.bim.module.resource.data.refresh() + bonsai.bim.module.resource.data.refresh() tool.Sequence.refresh_task_resources() @@ -70,7 +70,7 @@ def get_quantity_types(self, context): def update_active_resource_index(self, context): - blenderbim.bim.module.pset.data.refresh() + bonsai.bim.module.pset.data.refresh() if self.should_show_resource_tools: tool.Resource.load_productivity_data() @@ -87,9 +87,9 @@ def updateResourceUsage(self, context): tool.Sequence.load_task_properties() tool.Resource.load_resource_properties() tool.Sequence.refresh_task_resources() - blenderbim.bim.module.resource.data.refresh() - blenderbim.bim.module.sequence.data.refresh() - blenderbim.bim.module.pset.data.refresh() + bonsai.bim.module.resource.data.refresh() + bonsai.bim.module.sequence.data.refresh() + bonsai.bim.module.pset.data.refresh() class ISODuration(PropertyGroup): diff --git a/src/bonsai/bonsai/bim/module/resource/ui.py b/src/bonsai/bonsai/bim/module/resource/ui.py index c92b5a2a33..d046277a98 100644 --- a/src/bonsai/bonsai/bim/module/resource/ui.py +++ b/src/bonsai/bonsai/bim/module/resource/ui.py @@ -16,10 +16,10 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.bim.helper +import bonsai.bim.helper from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.resource.data import ResourceData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.resource.data import ResourceData class BIM_PT_resources(Panel): @@ -235,10 +235,10 @@ class BIM_PT_resources(Panel): row.operator("bim.disable_editing_resource", text="", icon="CANCEL") def draw_editable_resource_attributes_ui(self): - blenderbim.bim.helper.draw_attributes(self.props.resource_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.resource_attributes, self.layout) def draw_editable_resource_time_attributes_ui(self): - blenderbim.bim.helper.draw_attributes(self.props.resource_time_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.resource_time_attributes, self.layout) def draw_editable_resource_quantity_ui(self): resource = ResourceData.data["resources"][self.props.active_resource_id] @@ -261,7 +261,7 @@ class BIM_PT_resources(Panel): if self.props.is_editing_quantity: box = self.layout.box() - blenderbim.bim.helper.draw_attributes(self.props.quantity_attributes, box) + bonsai.bim.helper.draw_attributes(self.props.quantity_attributes, box) else: row = self.layout.row(align=True) row.prop(self.props, "quantity_types", text="") @@ -285,7 +285,7 @@ class BIM_PT_resources(Panel): self.draw_readonly_cost_value_ui(row, cost_value) if self.props.cost_value_editing_type == "ATTRIBUTES": - blenderbim.bim.helper.draw_attributes(self.props.cost_value_attributes, self.layout.box()) + bonsai.bim.helper.draw_attributes(self.props.cost_value_attributes, self.layout.box()) def draw_readonly_cost_value_ui(self, layout, cost_value): if self.props.active_cost_value_id == cost_value["id"] and self.props.cost_value_editing_type == "FORMULA": diff --git a/src/bonsai/bonsai/bim/module/root/data.py b/src/bonsai/bonsai/bim/module/root/data.py index 7c67c38ba9..3a11031e83 100644 --- a/src/bonsai/bonsai/bim/module/root/data.py +++ b/src/bonsai/bonsai/bim/module/root/data.py @@ -21,8 +21,8 @@ import bpy import ifcopenshell.util.element import ifcopenshell.util.schema from ifcopenshell.util.doc import get_entity_doc, get_predefined_type_doc, get_class_suggestions -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore from typing import Union diff --git a/src/bonsai/bonsai/bim/module/root/operator.py b/src/bonsai/bonsai/bim/module/root/operator.py index f7f4ef094a..f695d8e102 100644 --- a/src/bonsai/bonsai/bim/module/root/operator.py +++ b/src/bonsai/bonsai/bim/module/root/operator.py @@ -22,16 +22,11 @@ import ifcopenshell.api import ifcopenshell.util.schema import ifcopenshell.util.element import ifcopenshell.util.type -import blenderbim.bim.handler -import blenderbim.core.geometry -import blenderbim.core.material -import blenderbim.core.spatial -import blenderbim.core.style -import blenderbim.core.type -import blenderbim.core.root as core -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import get_enum_items +import bonsai.bim.handler +import bonsai.core.root as core +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import get_enum_items class EnableReassignClass(bpy.types.Operator): @@ -305,4 +300,4 @@ class CopyClass(bpy.types.Operator, tool.Ifc.Operator): objects = [bpy.data.objects.get(self.obj)] if self.obj else context.selected_objects for obj in objects: core.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=obj) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() diff --git a/src/bonsai/bonsai/bim/module/root/prop.py b/src/bonsai/bonsai/bim/module/root/prop.py index 20b4a06b16..0986d80bb5 100644 --- a/src/bonsai/bonsai/bim/module/root/prop.py +++ b/src/bonsai/bonsai/bim/module/root/prop.py @@ -20,8 +20,8 @@ import bpy import ifcopenshell import ifcopenshell.util.element import ifcopenshell.util.schema -import blenderbim.tool as tool -from blenderbim.bim.module.root.data import IfcClassData +import bonsai.tool as tool +from bonsai.bim.module.root.data import IfcClassData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/root/ui.py b/src/bonsai/bonsai/bim/module/root/ui.py index 0b7d3df04b..995d16cdcc 100644 --- a/src/bonsai/bonsai/bim/module/root/ui.py +++ b/src/bonsai/bonsai/bim/module/root/ui.py @@ -17,11 +17,11 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.module.root.prop as root_prop +import bonsai.bim.module.root.prop as root_prop from bpy.types import Panel -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.module.root.data import IfcClassData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import prop_with_search +from bonsai.bim.module.root.data import IfcClassData class BIM_PT_class(Panel): diff --git a/src/bonsai/bonsai/bim/module/search/data.py b/src/bonsai/bonsai/bim/module/search/data.py index 5c961bd159..7dffbf06fe 100644 --- a/src/bonsai/bonsai/bim/module/search/data.py +++ b/src/bonsai/bonsai/bim/module/search/data.py @@ -19,7 +19,7 @@ import bpy import json import ifcopenshell.util.element -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/search/operator.py b/src/bonsai/bonsai/bim/module/search/operator.py index 63fac6015b..927846792d 100644 --- a/src/bonsai/bonsai/bim/module/search/operator.py +++ b/src/bonsai/bonsai/bim/module/search/operator.py @@ -23,9 +23,9 @@ import ifcopenshell.api import ifcopenshell.guid import ifcopenshell.util.element import ifcopenshell.util.selector -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore -import blenderbim.core.search as core +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore +import bonsai.core.search as core from itertools import cycle from bpy.types import PropertyGroup, Operator from bpy.props import ( diff --git a/src/bonsai/bonsai/bim/module/search/prop.py b/src/bonsai/bonsai/bim/module/search/prop.py index 4af1ab6118..897ebc3771 100644 --- a/src/bonsai/bonsai/bim/module/search/prop.py +++ b/src/bonsai/bonsai/bim/module/search/prop.py @@ -17,10 +17,10 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell.util.schema -from blenderbim.bim.prop import ObjProperty, BIMFilterGroup -from blenderbim.bim.module.search.data import SearchData, ColourByPropertyData, SelectSimilarData +from bonsai.bim.prop import ObjProperty, BIMFilterGroup +from bonsai.bim.module.search.data import SearchData, ColourByPropertyData, SelectSimilarData from bpy.types import PropertyGroup from . import ui, prop, operator from bpy.props import ( diff --git a/src/bonsai/bonsai/bim/module/search/ui.py b/src/bonsai/bonsai/bim/module/search/ui.py index 26e40593a9..39336f3fc6 100644 --- a/src/bonsai/bonsai/bim/module/search/ui.py +++ b/src/bonsai/bonsai/bim/module/search/ui.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper +import bonsai.bim.helper from bpy.types import Panel -from blenderbim.bim.module.search.data import SearchData, ColourByPropertyData, SelectSimilarData +from bonsai.bim.module.search.data import SearchData, ColourByPropertyData, SelectSimilarData class BIM_PT_search(Panel): @@ -36,7 +36,7 @@ class BIM_PT_search(Panel): props = context.scene.BIMSearchProperties - blenderbim.bim.helper.draw_filter(self.layout, props.filter_groups, SearchData, "search") + bonsai.bim.helper.draw_filter(self.layout, props.filter_groups, SearchData, "search") if len(props.filter_groups): row = self.layout.row(align=True) diff --git a/src/bonsai/bonsai/bim/module/sequence/data.py b/src/bonsai/bonsai/bim/module/sequence/data.py index 4eca2f9124..7e46621ee0 100644 --- a/src/bonsai/bonsai/bim/module/sequence/data.py +++ b/src/bonsai/bonsai/bim/module/sequence/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell import ifcopenshell.util.date as dateutil import json diff --git a/src/bonsai/bonsai/bim/module/sequence/operator.py b/src/bonsai/bonsai/bim/module/sequence/operator.py index 0c75d6d213..32c6b8fa33 100644 --- a/src/bonsai/bonsai/bim/module/sequence/operator.py +++ b/src/bonsai/bonsai/bim/module/sequence/operator.py @@ -22,14 +22,14 @@ import json import time import calendar import isodate -import blenderbim.core.sequence as core -import blenderbim.tool as tool -import blenderbim.bim.module.sequence.helper as helper +import bonsai.core.sequence as core +import bonsai.tool as tool +import bonsai.bim.module.sequence.helper as helper import ifcopenshell.util.sequence import ifcopenshell.util.selector from datetime import datetime from dateutil import parser, relativedelta -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.ifc import IfcStore from bpy_extras.io_utils import ImportHelper diff --git a/src/bonsai/bonsai/bim/module/sequence/prop.py b/src/bonsai/bonsai/bim/module/sequence/prop.py index bcfba5f6e5..698af4d6df 100644 --- a/src/bonsai/bonsai/bim/module/sequence/prop.py +++ b/src/bonsai/bonsai/bim/module/sequence/prop.py @@ -22,13 +22,13 @@ import ifcopenshell.api import ifcopenshell.util.attribute import ifcopenshell.util.date from ifcopenshell.util.doc import get_predefined_type_doc -import blenderbim.tool as tool -import blenderbim.core.sequence as core -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.sequence.data import SequenceData, AnimationColorSchemeData, refresh as refresh_sequence_data -import blenderbim.bim.module.resource.data -import blenderbim.bim.module.pset.data -from blenderbim.bim.prop import StrProperty, Attribute +import bonsai.tool as tool +import bonsai.core.sequence as core +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.sequence.data import SequenceData, AnimationColorSchemeData, refresh as refresh_sequence_data +import bonsai.bim.module.resource.data +import bonsai.bim.module.pset.data +from bonsai.bim.prop import StrProperty, Attribute from dateutil import parser from bpy.types import PropertyGroup from bpy.props import ( @@ -93,7 +93,7 @@ def update_active_task_index(self, context): task = tool.Sequence.get_highlighted_task() self.highlighted_task_id = task.id() if task else 0 tool.Sequence.update_task_ICOM(task) - blenderbim.bim.module.pset.data.refresh() + bonsai.bim.module.pset.data.refresh() if self.editing_task_type == "SEQUENCE": tool.Sequence.load_task_properties() @@ -343,9 +343,9 @@ def updateAssignedResourceUsage(self, context): tool.Sequence.load_task_properties() tool.Resource.load_resource_properties() tool.Sequence.refresh_task_resources() - blenderbim.bim.module.resource.data.refresh() + bonsai.bim.module.resource.data.refresh() refresh_sequence_data() - blenderbim.bim.module.pset.data.refresh() + bonsai.bim.module.pset.data.refresh() def update_task_bar_list(self, context): diff --git a/src/bonsai/bonsai/bim/module/sequence/ui.py b/src/bonsai/bonsai/bim/module/sequence/ui.py index f6e9f6d8b0..fa850d8941 100644 --- a/src/bonsai/bonsai/bim/module/sequence/ui.py +++ b/src/bonsai/bonsai/bim/module/sequence/ui.py @@ -17,11 +17,11 @@ # along with Bonsai. If not, see . import isodate -import blenderbim.bim.helper +import bonsai.bim.helper from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import draw_attributes -from blenderbim.bim.module.sequence.data import ( +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import draw_attributes +from bonsai.bim.module.sequence.data import ( WorkPlansData, WorkScheduleData, SequenceData, @@ -384,10 +384,10 @@ class BIM_PT_work_schedules(Panel): op.task = task["id"] def draw_editable_sequence_attributes_ui(self): - blenderbim.bim.helper.draw_attributes(self.props.sequence_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.sequence_attributes, self.layout) def draw_editable_sequence_lag_time_ui(self): - blenderbim.bim.helper.draw_attributes(self.props.lag_time_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.lag_time_attributes, self.layout) def draw_editable_task_calendar_ui(self): task = SequenceData.data["tasks"][self.props.active_task_id] @@ -409,12 +409,12 @@ class BIM_PT_work_schedules(Panel): row.label(text="Must Create a Calendar First. See Work Calendar Panel", icon="INFO") def draw_editable_task_attributes_ui(self): - blenderbim.bim.helper.draw_attributes( + bonsai.bim.helper.draw_attributes( self.props.task_attributes, self.layout, copy_operator="bim.copy_task_attribute" ) def draw_editable_task_time_attributes_ui(self): - blenderbim.bim.helper.draw_attributes(self.props.task_time_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.task_time_attributes, self.layout) def draw_baseline_ui(self, work_schedule_id): if not self.props.should_show_schedule_baseline_ui: diff --git a/src/bonsai/bonsai/bim/module/spatial/data.py b/src/bonsai/bonsai/bim/module/spatial/data.py index 7db00158de..dfecc2b253 100644 --- a/src/bonsai/bonsai/bim/module/spatial/data.py +++ b/src/bonsai/bonsai/bim/module/spatial/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell.util.element diff --git a/src/bonsai/bonsai/bim/module/spatial/operator.py b/src/bonsai/bonsai/bim/module/spatial/operator.py index fc007c50dc..248145b409 100644 --- a/src/bonsai/bonsai/bim/module/spatial/operator.py +++ b/src/bonsai/bonsai/bim/module/spatial/operator.py @@ -18,12 +18,9 @@ import bpy import ifcopenshell.util.element -import blenderbim.tool as tool -import blenderbim.core.spatial as core -import blenderbim.core.geometry -import blenderbim.core.aggregate -import blenderbim.core.root -import blenderbim.bim.handler +import bonsai.tool as tool +import bonsai.core.spatial as core +import bonsai.bim.handler class ReferenceStructure(bpy.types.Operator, tool.Ifc.Operator): @@ -153,7 +150,7 @@ class CopyToContainer(bpy.types.Operator, tool.Ifc.Operator): # Recreate decompositions tool.Root.recreate_decompositions(relationships, old_to_new) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() class SelectContainer(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/spatial/prop.py b/src/bonsai/bonsai/bim/module/spatial/prop.py index 5996796dc0..22c8ec4c1c 100644 --- a/src/bonsai/bonsai/bim/module/spatial/prop.py +++ b/src/bonsai/bonsai/bim/module/spatial/prop.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.spatial.data import SpatialDecompositionData +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.spatial.data import SpatialDecompositionData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, @@ -30,7 +30,7 @@ from bpy.props import ( FloatVectorProperty, CollectionProperty, ) -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell import ifcopenshell.util.element diff --git a/src/bonsai/bonsai/bim/module/spatial/ui.py b/src/bonsai/bonsai/bim/module/spatial/ui.py index bad36e53e0..213b48dfe0 100644 --- a/src/bonsai/bonsai/bim/module/spatial/ui.py +++ b/src/bonsai/bonsai/bim/module/spatial/ui.py @@ -17,8 +17,8 @@ # along with Bonsai. If not, see . from bpy.types import Panel, UIList -from blenderbim.bim.module.spatial.data import SpatialData, SpatialDecompositionData -import blenderbim.tool as tool +from bonsai.bim.module.spatial.data import SpatialData, SpatialDecompositionData +import bonsai.tool as tool class BIM_PT_spatial(Panel): diff --git a/src/bonsai/bonsai/bim/module/spatial/workspace.py b/src/bonsai/bonsai/bim/module/spatial/workspace.py index 742f32f9ba..2eb0f8f05e 100644 --- a/src/bonsai/bonsai/bim/module/spatial/workspace.py +++ b/src/bonsai/bonsai/bim/module/spatial/workspace.py @@ -19,12 +19,10 @@ import os import bpy -import blenderbim.tool as tool -from blenderbim.bim.module.model.data import AuthoringData +import bonsai.tool as tool +from bonsai.bim.module.model.data import AuthoringData from bpy.types import WorkSpaceTool -from blenderbim.bim.ifc import IfcStore -import blenderbim.bim.handler -import blenderbim.core.spatial +import bonsai.core.spatial class SpatialTool(WorkSpaceTool): @@ -153,8 +151,8 @@ class Hotkey(bpy.types.Operator, tool.Ifc.Operator): bpy.ops.bim.generate_spaces_from_walls() else: try: - blenderbim.core.spatial.generate_space(tool.Ifc, tool.Model, tool.Root, tool.Spatial, tool.Type) - except blenderbim.core.spatial.NoDefaultContainer: + bonsai.core.spatial.generate_space(tool.Ifc, tool.Model, tool.Root, tool.Spatial, tool.Type) + except bonsai.core.spatial.NoDefaultContainer: return self.report({"ERROR"}, "Please set a default container to create the space in.") def hotkey_S_B(self): diff --git a/src/bonsai/bonsai/bim/module/structural/data.py b/src/bonsai/bonsai/bim/module/structural/data.py index 0a4d378e96..c088889f94 100644 --- a/src/bonsai/bonsai/bim/module/structural/data.py +++ b/src/bonsai/bonsai/bim/module/structural/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool import ifcopenshell.util.doc diff --git a/src/bonsai/bonsai/bim/module/structural/operator.py b/src/bonsai/bonsai/bim/module/structural/operator.py index 825c06f9dc..cf7a271797 100644 --- a/src/bonsai/bonsai/bim/module/structural/operator.py +++ b/src/bonsai/bonsai/bim/module/structural/operator.py @@ -21,14 +21,12 @@ import json import ifcopenshell import ifcopenshell.api import ifcopenshell.util.attribute -import blenderbim.bim.helper -import blenderbim.bim.handler -import blenderbim.core.structural as core -import blenderbim.tool as tool -import blenderbim.core.context +import bonsai.bim.helper +import bonsai.core.structural as core +import bonsai.tool as tool from math import degrees from mathutils import Vector, Matrix -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.ifc import IfcStore class AddStructuralMemberConnection(bpy.types.Operator, tool.Ifc.Operator): @@ -516,7 +514,7 @@ class EditStructuralLoadCase(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): props = context.scene.BIMStructuralProperties - attributes = blenderbim.bim.helper.export_attributes(props.load_case_attributes) + attributes = bonsai.bim.helper.export_attributes(props.load_case_attributes) self.file = IfcStore.get_file() ifcopenshell.api.run( "structural.edit_structural_load_case", @@ -552,7 +550,7 @@ class EnableEditingStructuralLoadCase(bpy.types.Operator): self.props.active_load_case_id = self.load_case self.props.load_case_editing_type = "ATTRIBUTES" self.props.load_case_attributes.clear() - blenderbim.bim.helper.import_attributes2( + bonsai.bim.helper.import_attributes2( tool.Ifc.get().by_id(self.load_case), self.props.load_case_attributes, callback=self.import_attributes ) return {"FINISHED"} @@ -756,7 +754,7 @@ class EnableEditingStructuralLoad(bpy.types.Operator): def execute(self, context): props = context.scene.BIMStructuralProperties props.structural_load_attributes.clear() - blenderbim.bim.helper.import_attributes2( + bonsai.bim.helper.import_attributes2( tool.Ifc.get().by_id(self.structural_load), props.structural_load_attributes ) props.active_structural_load_id = self.structural_load @@ -798,7 +796,7 @@ class EditStructuralLoad(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): props = context.scene.BIMStructuralProperties - attributes = blenderbim.bim.helper.export_attributes(props.structural_load_attributes) + attributes = bonsai.bim.helper.export_attributes(props.structural_load_attributes) self.file = IfcStore.get_file() ifcopenshell.api.run( "structural.edit_structural_load", @@ -909,7 +907,7 @@ class EnableEditingBoundaryCondition(bpy.types.Operator): props.boundary_condition_attributes.clear() boundary_condition = tool.Ifc.get().by_id(self.boundary_condition) - # blenderbim.bim.helper.import_attributes(data["type"], props.boundary_condition_attributes, data) + # bonsai.bim.helper.import_attributes(data["type"], props.boundary_condition_attributes, data) for attribute in IfcStore.get_schema().declaration_by_name(boundary_condition.is_a()).all_attributes(): value = getattr(boundary_condition, attribute.name(), None) data_type = ifcopenshell.util.attribute.get_primitive_type(attribute) @@ -971,7 +969,7 @@ class EditBoundaryCondition(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): props = context.scene.BIMStructuralProperties self.file = IfcStore.get_file() - # attributes = blenderbim.bim.helper.export_attributes(props.boundary_condition_attributes) + # attributes = bonsai.bim.helper.export_attributes(props.boundary_condition_attributes) attributes = {} for attribute in props.boundary_condition_attributes: if attribute.is_null: diff --git a/src/bonsai/bonsai/bim/module/structural/prop.py b/src/bonsai/bonsai/bim/module/structural/prop.py index ba67cd97d6..484bb2bb67 100644 --- a/src/bonsai/bonsai/bim/module/structural/prop.py +++ b/src/bonsai/bonsai/bim/module/structural/prop.py @@ -18,10 +18,10 @@ from math import radians import bpy -import blenderbim.tool as tool -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.structural.data import StructuralLoadCasesData, StructuralLoadsData, BoundaryConditionsData +import bonsai.tool as tool +from bonsai.bim.ifc import IfcStore +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.structural.data import StructuralLoadCasesData, StructuralLoadsData, BoundaryConditionsData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/structural/ui.py b/src/bonsai/bonsai/bim/module/structural/ui.py index a1012a81e4..0dbcf84d62 100644 --- a/src/bonsai/bonsai/bim/module/structural/ui.py +++ b/src/bonsai/bonsai/bim/module/structural/ui.py @@ -17,11 +17,11 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper +import bonsai.bim.helper from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import draw_attributes, prop_with_search -from blenderbim.bim.module.structural.data import ( +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import draw_attributes, prop_with_search +from bonsai.bim.module.structural.data import ( StructuralBoundaryConditionsData, ConnectedStructuralMembersData, StructuralMemberData, @@ -491,7 +491,7 @@ class BIM_PT_structural_loads(Panel): ) if self.props.active_structural_load_id: - blenderbim.bim.helper.draw_attributes(self.props.structural_load_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.structural_load_attributes, self.layout) class BIM_UL_structural_loads(UIList): @@ -565,7 +565,7 @@ class BIM_PT_boundary_conditions(Panel): if self.props.active_boundary_condition_id: draw_boundary_condition_editable_ui(self.layout, self.props) - # blenderbim.bim.helper.draw_attributes(self.props.boundary_condition_attributes, self.layout) + # bonsai.bim.helper.draw_attributes(self.props.boundary_condition_attributes, self.layout) class BIM_UL_boundary_conditions(UIList): diff --git a/src/bonsai/bonsai/bim/module/structural/workspace.py b/src/bonsai/bonsai/bim/module/structural/workspace.py index 6fe0905edb..1f4717b9d4 100644 --- a/src/bonsai/bonsai/bim/module/structural/workspace.py +++ b/src/bonsai/bonsai/bim/module/structural/workspace.py @@ -19,11 +19,8 @@ import os import bpy -import blenderbim.tool as tool -from blenderbim.bim.helper import prop_with_search +import bonsai.tool as tool from bpy.types import WorkSpaceTool -from blenderbim.bim.ifc import IfcStore -import blenderbim.bim.handler class StructuralTool(WorkSpaceTool): diff --git a/src/bonsai/bonsai/bim/module/style/data.py b/src/bonsai/bonsai/bim/module/style/data.py index 97fbd1c31e..2a9539e1bf 100644 --- a/src/bonsai/bonsai/bim/module/style/data.py +++ b/src/bonsai/bonsai/bim/module/style/data.py @@ -19,7 +19,7 @@ import bpy import ifcopenshell import ifcopenshell.util.schema -import blenderbim.tool as tool +import bonsai.tool as tool from ifcopenshell.util.doc import get_entity_doc from typing import Union diff --git a/src/bonsai/bonsai/bim/module/style/operator.py b/src/bonsai/bonsai/bim/module/style/operator.py index 3adf1a72a2..cef47fa6d0 100644 --- a/src/bonsai/bonsai/bim/module/style/operator.py +++ b/src/bonsai/bonsai/bim/module/style/operator.py @@ -18,10 +18,9 @@ import os import bpy -import blenderbim.bim.helper -import blenderbim.bim.handler -import blenderbim.tool as tool -import blenderbim.core.style as core +import bonsai.bim.helper +import bonsai.tool as tool +import bonsai.core.style as core import ifcopenshell.api import ifcopenshell.api.style import ifcopenshell.util.representation @@ -667,7 +666,7 @@ class EnableEditingSurfaceStyle(bpy.types.Operator, tool.Ifc.Operator): if attributes is not None: attributes.clear() - blenderbim.bim.helper.import_attributes2(surface_style or self.ifc_class, attributes, callback) + bonsai.bim.helper.import_attributes2(surface_style or self.ifc_class, attributes, callback) material = tool.Ifc.get_object(style) active_style_type = material.BIMStyleProperties.active_style_type @@ -754,7 +753,7 @@ class EditSurfaceStyle(bpy.types.Operator, tool.Ifc.Operator): "style.edit_surface_style", tool.Ifc.get(), style=self.surface_style, - attributes=blenderbim.bim.helper.export_attributes(attributes), + attributes=bonsai.bim.helper.export_attributes(attributes), ) def add_new_style(self): @@ -805,7 +804,7 @@ class EditSurfaceStyle(bpy.types.Operator, tool.Ifc.Operator): tool.Ifc.get(), style=self.style, ifc_class=self.props.is_editing_class, - attributes=blenderbim.bim.helper.export_attributes(attributes), + attributes=bonsai.bim.helper.export_attributes(attributes), ) def get_shading_attributes(self): diff --git a/src/bonsai/bonsai/bim/module/style/prop.py b/src/bonsai/bonsai/bim/module/style/prop.py index 637bd4cf4e..7036769470 100644 --- a/src/bonsai/bonsai/bim/module/style/prop.py +++ b/src/bonsai/bonsai/bim/module/style/prop.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.style.data import StylesData +import bonsai.tool as tool +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.style.data import StylesData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/style/ui.py b/src/bonsai/bonsai/bim/module/style/ui.py index a849649320..6bebbc07cc 100644 --- a/src/bonsai/bonsai/bim/module/style/ui.py +++ b/src/bonsai/bonsai/bim/module/style/ui.py @@ -17,11 +17,11 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper -import blenderbim.tool as tool +import bonsai.bim.helper +import bonsai.tool as tool from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.style.data import StylesData, BlenderMaterialStyleData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.style.data import StylesData, BlenderMaterialStyleData class BIM_PT_styles(Panel): @@ -46,7 +46,7 @@ class BIM_PT_styles(Panel): if not self.props.is_editing: row = self.layout.row(align=True) row.label(text="{} Styles".format(StylesData.data["total_styles"]), icon="SHADING_RENDERED") - blenderbim.bim.helper.prop_with_search(row, self.props, "style_type", text="") + bonsai.bim.helper.prop_with_search(row, self.props, "style_type", text="") row.operator("bim.load_styles", text="", icon="IMPORT").style_type = self.props.style_type return @@ -128,7 +128,7 @@ class BIM_PT_styles(Panel): # display style elements props during edit if self.props.is_editing_style: if self.props.is_editing_class == "IfcSurfaceStyle": - blenderbim.bim.helper.draw_attributes(self.props.attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.attributes, self.layout) row = self.layout.row(align=True) row.operator("bim.edit_style", text="Save Attributes", icon="CHECKMARK") row.operator("bim.disable_editing_style", text="", icon="CANCEL") @@ -243,19 +243,19 @@ class BIM_PT_styles(Panel): op = row.operator("bim.browse_external_style", icon="APPEND_BLEND", text="Append From Blend File") style = self.props.styles[self.props.active_style_index] op.active_surface_style_id = style.ifc_definition_id - blenderbim.bim.helper.draw_attributes(self.props.external_style_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.external_style_attributes, self.layout) row = self.layout.row(align=True) row.operator("bim.edit_surface_style", text="Save External Style", icon="CHECKMARK") row.operator("bim.disable_editing_style", text="", icon="CANCEL") def draw_refraction_surface_style(self): - blenderbim.bim.helper.draw_attributes(self.props.refraction_style_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.refraction_style_attributes, self.layout) row = self.layout.row(align=True) row.operator("bim.edit_surface_style", text="Save Refraction Style", icon="CHECKMARK") row.operator("bim.disable_editing_style", text="", icon="CANCEL") def draw_lighting_surface_style(self): - blenderbim.bim.helper.draw_attributes(self.props.lighting_style_colours, self.layout) + bonsai.bim.helper.draw_attributes(self.props.lighting_style_colours, self.layout) row = self.layout.row(align=True) row.operator("bim.edit_surface_style", text="Save Lighting Style", icon="CHECKMARK") row.operator("bim.disable_editing_style", text="", icon="CANCEL") diff --git a/src/bonsai/bonsai/bim/module/system/data.py b/src/bonsai/bonsai/bim/module/system/data.py index a8cb395fc1..836bf17079 100644 --- a/src/bonsai/bonsai/bim/module/system/data.py +++ b/src/bonsai/bonsai/bim/module/system/data.py @@ -22,7 +22,7 @@ import ifcopenshell.util.schema import ifcopenshell.util.system import ifcopenshell.util.unit from ifcopenshell.util.doc import get_entity_doc -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/system/decorator.py b/src/bonsai/bonsai/bim/module/system/decorator.py index 371e48ee26..3f902d0407 100644 --- a/src/bonsai/bonsai/bim/module/system/decorator.py +++ b/src/bonsai/bonsai/bim/module/system/decorator.py @@ -19,13 +19,13 @@ import bpy import gpu import bmesh -import blenderbim.tool as tool +import bonsai.tool as tool from math import sin, cos, radians from bpy.types import SpaceView3D from mathutils import Vector, Matrix from gpu_extras.batch import batch_for_shader import ifcopenshell -from blenderbim.bim.module.system.data import SystemDecorationData +from bonsai.bim.module.system.data import SystemDecorationData from bpy.app.handlers import persistent diff --git a/src/bonsai/bonsai/bim/module/system/operator.py b/src/bonsai/bonsai/bim/module/system/operator.py index 1e8a3bb332..164f58f5bf 100644 --- a/src/bonsai/bonsai/bim/module/system/operator.py +++ b/src/bonsai/bonsai/bim/module/system/operator.py @@ -18,12 +18,11 @@ import bpy import ifcopenshell.api -import blenderbim.tool as tool -import blenderbim.core.system as core -import blenderbim.bim.handler -import blenderbim.bim.helper -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.system.data import PortData +import bonsai.tool as tool +import bonsai.core.system as core +import bonsai.bim.helper +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.system.data import PortData from mathutils import Matrix @@ -380,7 +379,7 @@ class EnableEditingZone(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): props = bpy.context.scene.BIMZoneProperties props.attributes.clear() - blenderbim.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.zone), props.attributes) + bonsai.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.zone), props.attributes) props.is_editing = self.zone @@ -402,7 +401,7 @@ class EditZone(bpy.types.Operator, tool.Ifc.Operator): def _execute(self, context): props = bpy.context.scene.BIMZoneProperties zone = tool.Ifc.get().by_id(props.is_editing) - attributes = blenderbim.bim.helper.export_attributes(props.attributes) + attributes = bonsai.bim.helper.export_attributes(props.attributes) ifcopenshell.api.run("system.edit_system", tool.Ifc.get(), system=zone, attributes=attributes) props.is_editing = 0 bpy.ops.bim.load_zones() diff --git a/src/bonsai/bonsai/bim/module/system/prop.py b/src/bonsai/bonsai/bim/module/system/prop.py index 69672a707a..91586a2224 100644 --- a/src/bonsai/bonsai/bim/module/system/prop.py +++ b/src/bonsai/bonsai/bim/module/system/prop.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.module.system.data import SystemData -import blenderbim.bim.module.system.decorator as decorator -from blenderbim.bim.prop import StrProperty, Attribute +from bonsai.bim.module.system.data import SystemData +import bonsai.bim.module.system.decorator as decorator +from bonsai.bim.prop import StrProperty, Attribute from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/system/ui.py b/src/bonsai/bonsai/bim/module/system/ui.py index d44bf24541..80996cc149 100644 --- a/src/bonsai/bonsai/bim/module/system/ui.py +++ b/src/bonsai/bonsai/bim/module/system/ui.py @@ -17,11 +17,11 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.bim.helper -import blenderbim.tool as tool -from blenderbim.bim.helper import prop_with_search +import bonsai.bim.helper +import bonsai.tool as tool +from bonsai.bim.helper import prop_with_search from bpy.types import Panel, UIList -from blenderbim.bim.module.system.data import SystemData, ZonesData, ActiveObjectZonesData, ObjectSystemData, PortData +from bonsai.bim.module.system.data import SystemData, ZonesData, ActiveObjectZonesData, ObjectSystemData, PortData FLOW_DIRECTION_TO_ICON = { @@ -377,7 +377,7 @@ class BIM_PT_zones(Panel): self.layout.template_list("BIM_UL_zones", "", self.props, "zones", self.props, "active_zone_index") if self.props.is_editing: - blenderbim.bim.helper.draw_attributes(self.props.attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.attributes, self.layout) row = self.layout.row(align=True) row.operator("bim.edit_zone", icon="CHECKMARK") row.operator("bim.disable_editing_zone", icon="CANCEL", text="") diff --git a/src/bonsai/bonsai/bim/module/tester/data.py b/src/bonsai/bonsai/bim/module/tester/data.py index 4cc1028ed9..fb5ad0fd35 100644 --- a/src/bonsai/bonsai/bim/module/tester/data.py +++ b/src/bonsai/bonsai/bim/module/tester/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/tester/operator.py b/src/bonsai/bonsai/bim/module/tester/operator.py index 3d04d3f6a7..50c710accb 100644 --- a/src/bonsai/bonsai/bim/module/tester/operator.py +++ b/src/bonsai/bonsai/bim/module/tester/operator.py @@ -25,8 +25,8 @@ import ifctester import ifctester.ids import ifctester.reporter import ifcopenshell -import blenderbim.tool as tool -import blenderbim.bim.handler +import bonsai.tool as tool +import bonsai.bim.handler from pathlib import Path @@ -57,7 +57,7 @@ class ExecuteIfcTester(bpy.types.Operator, tool.Ifc.Operator): for f in props.specs.file_list: self.execute_tester(ifc_data, ifc_file.name, f.name) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} def execute_tester(self, ifc_data, ifc_path, specs_path): diff --git a/src/bonsai/bonsai/bim/module/tester/prop.py b/src/bonsai/bonsai/bim/module/tester/prop.py index ee66957505..52e20ca1e0 100644 --- a/src/bonsai/bonsai/bim/module/tester/prop.py +++ b/src/bonsai/bonsai/bim/module/tester/prop.py @@ -16,8 +16,8 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -from blenderbim.bim.module.tester.data import TesterData -from blenderbim.bim.prop import StrProperty, MultipleFileSelect +from bonsai.bim.module.tester.data import TesterData +from bonsai.bim.prop import StrProperty, MultipleFileSelect from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/tester/ui.py b/src/bonsai/bonsai/bim/module/tester/ui.py index 6c952f2509..f6de2a7f3a 100644 --- a/src/bonsai/bonsai/bim/module/tester/ui.py +++ b/src/bonsai/bonsai/bim/module/tester/ui.py @@ -16,9 +16,9 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import Panel, UIList -from blenderbim.bim.module.tester.data import TesterData +from bonsai.bim.module.tester.data import TesterData class BIM_PT_tester(Panel): diff --git a/src/bonsai/bonsai/bim/module/type/data.py b/src/bonsai/bonsai/bim/module/type/data.py index 0c0efb3683..37586df924 100644 --- a/src/bonsai/bonsai/bim/module/type/data.py +++ b/src/bonsai/bonsai/bim/module/type/data.py @@ -20,7 +20,7 @@ import bpy import ifcopenshell.util.type import ifcopenshell.util.element from ifcopenshell.util.doc import get_entity_doc -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/type/operator.py b/src/bonsai/bonsai/bim/module/type/operator.py index 9938a1a3ec..05f4d0ff54 100644 --- a/src/bonsai/bonsai/bim/module/type/operator.py +++ b/src/bonsai/bonsai/bim/module/type/operator.py @@ -24,11 +24,11 @@ import ifcopenshell.util.representation import ifcopenshell.util.type import ifcopenshell.util.unit import ifcopenshell.api -import blenderbim.tool as tool -import blenderbim.core.geometry -import blenderbim.core.type as core -import blenderbim.core.root -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.geometry +import bonsai.core.type as core +import bonsai.core.root +from bonsai.bim.ifc import IfcStore class AssignType(bpy.types.Operator, tool.Ifc.Operator): @@ -98,7 +98,7 @@ class UnassignType(bpy.types.Operator): element.Representation.Representations = representations if new_active_representation: - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=obj, @@ -268,7 +268,7 @@ class AddType(bpy.types.Operator, tool.Ifc.Operator): bm.free() obj = bpy.data.objects.new(name, mesh) obj.matrix_world.translation = location - blenderbim.core.root.assign_class( + bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -283,7 +283,7 @@ class AddType(bpy.types.Operator, tool.Ifc.Operator): elif template in ("LAYERSET_AXIS2", "LAYERSET_AXIS3"): unit_scale = ifcopenshell.util.unit.calculate_unit_scale(ifc_file) obj = bpy.data.objects.new(name, None) - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -317,7 +317,7 @@ class AddType(bpy.types.Operator, tool.Ifc.Operator): elif template == "PROFILESET" or template.startswith("FLOW_SEGMENT_"): unit_scale = ifcopenshell.util.unit.calculate_unit_scale(ifc_file) obj = bpy.data.objects.new(name, None) - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -390,7 +390,7 @@ class AddType(bpy.types.Operator, tool.Ifc.Operator): elif template == "EMPTY": obj = bpy.data.objects.new(name, None) - blenderbim.core.root.assign_class( + bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -405,7 +405,7 @@ class AddType(bpy.types.Operator, tool.Ifc.Operator): elif template == "WINDOW": mesh = bpy.data.meshes.new(name) obj = bpy.data.objects.new(name, mesh) - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -420,7 +420,7 @@ class AddType(bpy.types.Operator, tool.Ifc.Operator): elif template == "DOOR": mesh = bpy.data.meshes.new(name) obj = bpy.data.objects.new(name, mesh) - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -435,7 +435,7 @@ class AddType(bpy.types.Operator, tool.Ifc.Operator): elif template == "STAIR": mesh = bpy.data.meshes.new(name) obj = bpy.data.objects.new(name, mesh) - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -450,7 +450,7 @@ class AddType(bpy.types.Operator, tool.Ifc.Operator): elif template == "RAILING": mesh = bpy.data.meshes.new(name) obj = bpy.data.objects.new(name, mesh) - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -466,7 +466,7 @@ class AddType(bpy.types.Operator, tool.Ifc.Operator): elif template == "ROOF": mesh = bpy.data.meshes.new(name) obj = bpy.data.objects.new(name, mesh) - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -549,7 +549,7 @@ class DuplicateType(bpy.types.Operator, tool.Ifc.Operator): new_obj = obj.copy() if obj.data: new_obj.data = obj.data.copy() - new = blenderbim.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=new_obj) + new = bonsai.core.root.copy_class(tool.Ifc, tool.Collector, tool.Geometry, tool.Root, obj=new_obj) new.Name += " Copy" bpy.ops.bim.load_type_thumbnails(ifc_class=new.is_a()) if obj in context.selectable_objects: diff --git a/src/bonsai/bonsai/bim/module/type/prop.py b/src/bonsai/bonsai/bim/module/type/prop.py index 92704b8ecf..ac7986fe6b 100644 --- a/src/bonsai/bonsai/bim/module/type/prop.py +++ b/src/bonsai/bonsai/bim/module/type/prop.py @@ -19,10 +19,10 @@ import bpy import ifcopenshell.util.element import ifcopenshell.util.type -from blenderbim.bim.module.type.data import TypeData -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.ifc import IfcStore -import blenderbim.tool as tool +from bonsai.bim.module.type.data import TypeData +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.ifc import IfcStore +import bonsai.tool as tool from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/type/ui.py b/src/bonsai/bonsai/bim/module/type/ui.py index 2119f52dbe..4bfca516e3 100644 --- a/src/bonsai/bonsai/bim/module/type/ui.py +++ b/src/bonsai/bonsai/bim/module/type/ui.py @@ -16,12 +16,12 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.tool as tool -import blenderbim.bim.module.type.prop as type_prop +import bonsai.tool as tool +import bonsai.bim.module.type.prop as type_prop from bpy.types import Panel -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.module.type.data import TypeData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import prop_with_search +from bonsai.bim.module.type.data import TypeData class BIM_PT_type(Panel): diff --git a/src/bonsai/bonsai/bim/module/unit/data.py b/src/bonsai/bonsai/bim/module/unit/data.py index c8972871ec..32cdf97223 100644 --- a/src/bonsai/bonsai/bim/module/unit/data.py +++ b/src/bonsai/bonsai/bim/module/unit/data.py @@ -21,7 +21,7 @@ import ifcopenshell.util.unit import ifcopenshell.util.schema import ifcopenshell.util.attribute from ifcopenshell.util.doc import get_entity_doc -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/unit/operator.py b/src/bonsai/bonsai/bim/module/unit/operator.py index 763a424dc2..0385a0ab4a 100644 --- a/src/bonsai/bonsai/bim/module/unit/operator.py +++ b/src/bonsai/bonsai/bim/module/unit/operator.py @@ -17,14 +17,10 @@ # along with Bonsai. If not, see . import bpy -import json import ifcopenshell.api import ifcopenshell.util.unit -import blenderbim.bim.helper -import blenderbim.bim.handler -import blenderbim.tool as tool -import blenderbim.core.unit as core -from blenderbim.bim.ifc import IfcStore +import bonsai.tool as tool +import bonsai.core.unit as core class AssignSceneUnits(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/unit/prop.py b/src/bonsai/bonsai/bim/module/unit/prop.py index 8881320f07..edd23f2ce4 100644 --- a/src/bonsai/bonsai/bim/module/unit/prop.py +++ b/src/bonsai/bonsai/bim/module/unit/prop.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.prop import StrProperty, Attribute -from blenderbim.bim.module.unit.data import UnitsData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.prop import StrProperty, Attribute +from bonsai.bim.module.unit.data import UnitsData from bpy.types import PropertyGroup from bpy.props import ( PointerProperty, diff --git a/src/bonsai/bonsai/bim/module/unit/ui.py b/src/bonsai/bonsai/bim/module/unit/ui.py index 5476a16ace..77e0117699 100644 --- a/src/bonsai/bonsai/bim/module/unit/ui.py +++ b/src/bonsai/bonsai/bim/module/unit/ui.py @@ -16,11 +16,11 @@ # You should have received a copy of the GNU General Public License # along with Bonsai. If not, see . -import blenderbim.bim.helper +import bonsai.bim.helper from bpy.types import Panel, UIList -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.helper import prop_with_search -from blenderbim.bim.module.unit.data import UnitsData +from bonsai.bim.ifc import IfcStore +from bonsai.bim.helper import prop_with_search +from bonsai.bim.module.unit.data import UnitsData class BIM_PT_units(Panel): @@ -98,7 +98,7 @@ class BIM_PT_units(Panel): self.draw_editable_ui(context) def draw_editable_ui(self, context): - blenderbim.bim.helper.draw_attributes(self.props.unit_attributes, self.layout) + bonsai.bim.helper.draw_attributes(self.props.unit_attributes, self.layout) class BIM_UL_units(UIList): diff --git a/src/bonsai/bonsai/bim/module/void/data.py b/src/bonsai/bonsai/bim/module/void/data.py index 8f47797324..11f58f51c9 100644 --- a/src/bonsai/bonsai/bim/module/void/data.py +++ b/src/bonsai/bonsai/bim/module/void/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool def refresh(): diff --git a/src/bonsai/bonsai/bim/module/void/operator.py b/src/bonsai/bonsai/bim/module/void/operator.py index a1211793a4..3f30028e56 100644 --- a/src/bonsai/bonsai/bim/module/void/operator.py +++ b/src/bonsai/bonsai/bim/module/void/operator.py @@ -20,12 +20,12 @@ import bpy import ifcopenshell.api import ifcopenshell.util.element import ifcopenshell.util.representation -import blenderbim.tool as tool -import blenderbim.core.geometry -import blenderbim.core.root -import blenderbim.bim.handler -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.module.model.opening import FilledOpeningGenerator +import bonsai.tool as tool +import bonsai.core.geometry +import bonsai.core.root +import bonsai.bim.handler +from bonsai.bim.ifc import IfcStore +from bonsai.bim.module.model.opening import FilledOpeningGenerator class AddOpening(bpy.types.Operator, tool.Ifc.Operator): @@ -86,7 +86,7 @@ class AddOpening(bpy.types.Operator, tool.Ifc.Operator): continue if tool.Ifc.is_moved(obj1): - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj1) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj1) has_visible_openings = False for opening in [r.RelatedOpeningElement for r in element1.HasOpenings]: @@ -96,7 +96,7 @@ class AddOpening(bpy.types.Operator, tool.Ifc.Operator): body_context = ifcopenshell.util.representation.get_context(IfcStore.get_file(), "Model", "Body") if not element2: - element2 = blenderbim.core.root.assign_class( + element2 = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root, @@ -108,7 +108,7 @@ class AddOpening(bpy.types.Operator, tool.Ifc.Operator): ifcopenshell.api.run("void.add_opening", tool.Ifc.get(), opening=element2, element=element1) if tool.Ifc.is_moved(obj2): - blenderbim.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj2) + bonsai.core.geometry.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj2) voided_objs = [obj1] for subelement in ifcopenshell.util.element.get_decomposition(element1): @@ -119,7 +119,7 @@ class AddOpening(bpy.types.Operator, tool.Ifc.Operator): for voided_obj in voided_objs: if voided_obj.data: representation = tool.Ifc.get().by_id(voided_obj.data.BIMMeshProperties.ifc_definition_id) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=voided_obj, @@ -162,7 +162,7 @@ class RemoveOpening(bpy.types.Operator, tool.Ifc.Operator): building_obj = tool.Ifc.get_object(building_element) if building_obj and building_obj.data: representation = tool.Geometry.get_active_representation(building_obj) - blenderbim.core.geometry.switch_representation( + bonsai.core.geometry.switch_representation( tool.Ifc, tool.Geometry, obj=building_obj, @@ -271,5 +271,5 @@ class BooleansMarkAsManual(bpy.types.Operator): self.report( {"INFO"}, f"{len(booleans)} booleans were marked as {'manual' if self.mark_as_manual else 'automatic'}" ) - blenderbim.bim.handler.refresh_ui_data() + bonsai.bim.handler.refresh_ui_data() return {"FINISHED"} diff --git a/src/bonsai/bonsai/bim/module/void/ui.py b/src/bonsai/bonsai/bim/module/void/ui.py index 9a8a39e60f..1eea69f996 100644 --- a/src/bonsai/bonsai/bim/module/void/ui.py +++ b/src/bonsai/bonsai/bim/module/void/ui.py @@ -17,9 +17,9 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool from bpy.types import Panel -from blenderbim.bim.module.void.data import BooleansData, VoidsData +from bonsai.bim.module.void.data import BooleansData, VoidsData class BIM_PT_voids(Panel): diff --git a/src/bonsai/bonsai/bim/module/web/data.py b/src/bonsai/bonsai/bim/module/web/data.py index 70bcb1a83d..fa94ad26d8 100644 --- a/src/bonsai/bonsai/bim/module/web/data.py +++ b/src/bonsai/bonsai/bim/module/web/data.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . import bpy -import blenderbim.tool as tool +import bonsai.tool as tool import os diff --git a/src/bonsai/bonsai/bim/module/web/operator.py b/src/bonsai/bonsai/bim/module/web/operator.py index 41b47ca282..f1a4aca7c1 100644 --- a/src/bonsai/bonsai/bim/module/web/operator.py +++ b/src/bonsai/bonsai/bim/module/web/operator.py @@ -18,8 +18,8 @@ import os import bpy -import blenderbim.core.web as core -import blenderbim.tool as tool +import bonsai.core.web as core +import bonsai.tool as tool class ConnectToWebsocketServer(bpy.types.Operator): diff --git a/src/bonsai/bonsai/bim/module/web/ui.py b/src/bonsai/bonsai/bim/module/web/ui.py index 8cee7e4b59..7af5cf84f7 100644 --- a/src/bonsai/bonsai/bim/module/web/ui.py +++ b/src/bonsai/bonsai/bim/module/web/ui.py @@ -17,7 +17,7 @@ # along with Bonsai. If not, see . from bpy.types import Panel -from blenderbim.bim.module.web.data import WebData +from bonsai.bim.module.web.data import WebData class BIM_PT_webui(Panel): diff --git a/src/bonsai/bonsai/bim/operator.py b/src/bonsai/bonsai/bim/operator.py index 3703a0dd74..bf19d0fa40 100644 --- a/src/bonsai/bonsai/bim/operator.py +++ b/src/bonsai/bonsai/bim/operator.py @@ -29,14 +29,13 @@ import subprocess import tempfile import webbrowser import ifcopenshell -import blenderbim.bim.handler -import blenderbim.tool as tool -from . import schema -from blenderbim.bim import import_ifc -from blenderbim.bim.ifc import IfcStore -from blenderbim.bim.prop import StrProperty -from blenderbim.bim.ui import IFCFileSelector -from blenderbim.bim.helper import get_enum_items +import bonsai.bim +import bonsai.tool as tool +from bonsai.bim import import_ifc +from bonsai.bim.ifc import IfcStore +from bonsai.bim.prop import StrProperty +from bonsai.bim.ui import IFCFileSelector +from bonsai.bim.helper import get_enum_items from mathutils import Vector, Matrix, Euler from math import radians from pathlib import Path @@ -54,7 +53,7 @@ class SetTab(bpy.types.Operator): @classmethod def description(cls, context, operator): - return next((t[1] for t in blenderbim.bim.prop.get_tab(None, context) if t[0] == operator.tab), "") + return next((t[1] for t in bonsai.bim.prop.get_tab(None, context) if t[0] == operator.tab), "") def execute(self, context): if context.area.spaces.active.search_filter: @@ -96,7 +95,7 @@ class CloseError(bpy.types.Operator): bl_label = "Close Error" def execute(self, context): - blenderbim.last_error = None + bonsai.last_error = None return {"FINISHED"} def draw(self, context): diff --git a/src/bonsai/bonsai/bim/prop.py b/src/bonsai/bonsai/bim/prop.py index deef175dd6..809dcd9e69 100644 --- a/src/bonsai/bonsai/bim/prop.py +++ b/src/bonsai/bonsai/bim/prop.py @@ -31,11 +31,11 @@ from ifcopenshell.util.doc import ( get_property_doc, get_predefined_type_doc, ) -import blenderbim.bim -import blenderbim.bim.schema -import blenderbim.bim.handler -from blenderbim.bim.ifc import IfcStore -import blenderbim.tool as tool +import bonsai.bim +import bonsai.bim.schema +import bonsai.bim.handler +from bonsai.bim.ifc import IfcStore +import bonsai.tool as tool from collections import defaultdict from bpy.types import PropertyGroup from bpy.props import ( @@ -110,20 +110,20 @@ def get_attribute_enum_values(prop, context): def update_schema_dir(self, context): - import blenderbim.bim.schema + import bonsai.bim.schema - blenderbim.bim.schema.ifc.schema_dir = context.scene.BIMProperties.schema_dir + bonsai.bim.schema.ifc.schema_dir = context.scene.BIMProperties.schema_dir def update_data_dir(self, context): - import blenderbim.bim.schema + import bonsai.bim.schema - blenderbim.bim.schema.ifc.data_dir = context.scene.BIMProperties.data_dir + bonsai.bim.schema.ifc.data_dir = context.scene.BIMProperties.data_dir def update_ifc_file(self, context): if context.scene.BIMProperties.ifc_file: - blenderbim.bim.handler.loadIfcStore(context.scene) + bonsai.bim.handler.loadIfcStore(context.scene) def update_section_color(self, context): @@ -345,7 +345,7 @@ class Attribute(PropertyGroup): def get_tab(self, context): return [ - ("PROJECT", "Project Overview", "", blenderbim.bim.icons["IFC"].icon_id, 0), + ("PROJECT", "Project Overview", "", bonsai.bim.icons["IFC"].icon_id, 0), ("OBJECT", "Object Information", "", "FILE_3D", 1), ("GEOMETRY", "Geometry and Materials", "", "MATERIAL", 2), ("DRAWINGS", "Drawings and Documents", "", "DOCUMENTS", 3), diff --git a/src/bonsai/bonsai/bim/ui.py b/src/bonsai/bonsai/bim/ui.py index d20a919a55..fd482004f3 100644 --- a/src/bonsai/bonsai/bim/ui.py +++ b/src/bonsai/bonsai/bim/ui.py @@ -29,11 +29,11 @@ from ifcopenshell.util.doc import ( get_attribute_doc, ) from . import ifc -from blenderbim import get_debug_info -import blenderbim.bim -import blenderbim.tool as tool +from bonsai import get_debug_info +import bonsai.bim +import bonsai.tool as tool from ifcopenshell.util.file import IfcHeaderExtractor -from blenderbim.bim.prop import Attribute +from bonsai.bim.prop import Attribute from typing import Optional @@ -400,7 +400,7 @@ class BIM_PT_tabs(Panel): text="", emboss=aprops.tab == "PROJECT", depress=True, - icon_value=blenderbim.bim.icons["IFC"].icon_id, + icon_value=bonsai.bim.icons["IFC"].icon_id, ).tab = "PROJECT" self.draw_tab_entry(row, "FILE_3D", "OBJECT", is_ifc_project, aprops.tab == "OBJECT") self.draw_tab_entry(row, "MATERIAL", "GEOMETRY", is_ifc_project, aprops.tab == "GEOMETRY") @@ -436,17 +436,17 @@ class BIM_PT_tabs(Panel): row = self.layout.row(align=True) row.prop(aprops, "tab", text="") - if blenderbim.REINSTALLED_BBIM_VERSION: + if bonsai.REINSTALLED_BBIM_VERSION: box = self.layout.box() box.alert = True box.label(text="Bonsai requires Blender to restart.", icon="ERROR") box.label(text="Bonsai was reinstalled in the current session:") - box.label(text=f"{blenderbim.FIRST_INSTALLED_BBIM_VERSION} -> {blenderbim.REINSTALLED_BBIM_VERSION}") + box.label(text=f"{bonsai.FIRST_INSTALLED_BBIM_VERSION} -> {bonsai.REINSTALLED_BBIM_VERSION}") box.label(text="Please restart Blender to avoid potential issues.") box.operator("bim.restart_blender", text="Restart Blender", icon="BLENDER") - if blenderbim.last_error: + if bonsai.last_error: box = self.layout.box() box.alert = True row = box.row(align=True) diff --git a/src/bonsai/test/bim/bootstrap.py b/src/bonsai/test/bim/bootstrap.py index 001d25ec6a..bea49df413 100644 --- a/src/bonsai/test/bim/bootstrap.py +++ b/src/bonsai/test/bim/bootstrap.py @@ -22,11 +22,11 @@ import re import bpy import pytest import webbrowser -import blenderbim +import bonsai.bim.handler import ifcopenshell import ifcopenshell.util.element import ifcopenshell.util.representation -from blenderbim.bim.ifc import IfcStore +from bonsai.bim.ifc import IfcStore from mathutils import Vector # Monkey-patch webbrowser opening since we want to test headlessly @@ -44,7 +44,7 @@ class NewFile: if bpy.data.objects: bpy.data.batch_remove(bpy.data.objects) bpy.ops.outliner.orphans_purge(do_local_ids=True, do_linked_ids=True, do_recursive=True) - blenderbim.bim.handler.load_post(None) + bonsai.bim.handler.load_post(None) class NewIfc: @@ -54,7 +54,7 @@ class NewIfc: bpy.ops.wm.read_homefile(app_template="") bpy.data.batch_remove(bpy.data.objects) bpy.ops.outliner.orphans_purge(do_local_ids=True, do_linked_ids=True, do_recursive=True) - blenderbim.bim.handler.load_post(None) + bonsai.bim.handler.load_post(None) bpy.ops.bim.create_project() @@ -65,7 +65,7 @@ class NewIfc4X3: bpy.ops.wm.read_homefile(app_template="") bpy.data.batch_remove(bpy.data.objects) bpy.ops.outliner.orphans_purge(do_local_ids=True, do_linked_ids=True, do_recursive=True) - blenderbim.bim.handler.load_post(None) + bonsai.bim.handler.load_post(None) bpy.context.scene.BIMProjectProperties.export_schema = "IFC4X3_ADD2" bpy.ops.bim.create_project() @@ -245,12 +245,12 @@ def the_object_name_is_contained_in_container_name(name, container_name): def i_duplicate_the_selected_objects(): bpy.ops.object.duplicate_move() - blenderbim.bim.handler.active_object_callback() + bonsai.bim.handler.active_object_callback() def i_delete_the_selected_objects(): bpy.ops.object.delete() - blenderbim.bim.handler.active_object_callback() + bonsai.bim.handler.active_object_callback() def the_object_name1_and_name2_are_different_elements(name1, name2): diff --git a/src/bonsai/test/bim/feature/demo.feature b/src/bonsai/test/bim/feature/demo.feature index 5457bd5170..096eae8f99 100644 --- a/src/bonsai/test/bim/feature/demo.feature +++ b/src/bonsai/test/bim/feature/demo.feature @@ -1,6 +1,6 @@ # ############################################################################ # -# Hey there! Welcome to the BlenderBIM Add-on code. Please feel free to reach +# Hey there! Welcome to the Bonsai code. Please feel free to reach # out if you have any questions or need further guidance. Happy hacking! # ############################################################################ # diff --git a/src/bonsai/test/bim/module/drawing/test_segment_clipping.py b/src/bonsai/test/bim/module/drawing/test_segment_clipping.py index ed1467854d..2a30f6a957 100644 --- a/src/bonsai/test/bim/module/drawing/test_segment_clipping.py +++ b/src/bonsai/test/bim/module/drawing/test_segment_clipping.py @@ -18,7 +18,7 @@ import pytest from mathutils import Vector -from blenderbim.bim.module.drawing.helper import clip_segment +from bonsai.bim.module.drawing.helper import clip_segment BOUNDS = (10, 30, 10, 30, None, None) diff --git a/src/bonsai/test/bim/test_feature.py b/src/bonsai/test/bim/test_feature.py index d95ebb7945..4fe5d5bfcb 100644 --- a/src/bonsai/test/bim/test_feature.py +++ b/src/bonsai/test/bim/test_feature.py @@ -24,11 +24,11 @@ import numpy as np import ifcopenshell import ifcopenshell.util.element import ifcopenshell.util.representation -import blenderbim.tool as tool -import blenderbim.bim -from blenderbim.bim.ifc import IfcStore -from blenderbim.tool.brick import BrickStore -from blenderbim.bim.module.model.data import AuthoringData +import bonsai.tool as tool +import bonsai.bim.handler +from bonsai.bim.ifc import IfcStore +from bonsai.tool.brick import BrickStore +from bonsai.bim.module.model.data import AuthoringData from pytest_bdd import scenarios, given, when, then, parsers from mathutils import Vector from math import radians @@ -390,19 +390,19 @@ def i_evaluate_expression(expression): @when("I duplicate the selected objects") def i_duplicate_the_selected_objects(): bpy.ops.bim.override_object_duplicate_move() - blenderbim.bim.handler.active_object_callback() + bonsai.bim.handler.active_object_callback() @when("I duplicate linked aggregate the selected objects") def i_duplicate_linked_aggregate_the_selected_objects(): bpy.ops.bim.object_duplicate_move_linked_aggregate() - blenderbim.bim.handler.active_object_callback() + bonsai.bim.handler.active_object_callback() @when("I refresh linked aggregate the selected object") def i_refresh_the_selected_objects(): bpy.ops.bim.refresh_linked_aggregate() - blenderbim.bim.handler.active_object_callback() + bonsai.bim.handler.active_object_callback() @when("I deselect all objects") @@ -1075,7 +1075,7 @@ def i_load_the_ifc_test_file(filepath): @given("I load the demo construction library") @when("I load the demo construction library") def i_add_a_construction_library(): - lib_path = "./blenderbim/bim/data/libraries/IFC4 Demo Library.ifc" + lib_path = "./bonsai/bim/data/libraries/IFC4 Demo Library.ifc" bpy.ops.bim.select_library_file(filepath=lib_path, append_all=True) diff --git a/src/bonsai/test/tool/test_qto.py b/src/bonsai/test/tool/test_qto.py index 5017806e33..9ed5c1e024 100644 --- a/src/bonsai/test/tool/test_qto.py +++ b/src/bonsai/test/tool/test_qto.py @@ -22,16 +22,15 @@ import ifcopenshell.api import ifcopenshell.util.pset import test.bim.bootstrap import bonsai.core.tool -import blenderbim.core.root +import bonsai.core.root import bonsai.tool as tool -import blenderbim.bim.import_ifc as import_ifc -import blenderbim.bim.module.qto.calculator as calculator +import bonsai.bim.import_ifc as import_ifc from bonsai.tool.qto import Qto as subject class TestImplementsTool(test.bim.bootstrap.NewFile): def test_run(self): - assert isinstance(subject(), blenderbim.core.tool.Qto) + assert isinstance(subject(), bonsai.core.tool.Qto) class TestGetRadiusOfSelectedVertices(test.bim.bootstrap.NewFile): @@ -75,7 +74,7 @@ class TestGetCalculatedObjectQuantities(test.bim.bootstrap.NewFile): context = ifcopenshell.api.run("context.add_context", self.ifc, context_type="Model") bpy.ops.mesh.primitive_cube_add(location=(0.0, 0.0, 0.0), size=2) obj = bpy.context.active_object - element = blenderbim.core.root.assign_class( + element = bonsai.core.root.assign_class( tool.Ifc, tool.Collector, tool.Root,