mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-11 02:02:22 +00:00
bonsai other scripts #5178
This commit is contained in:
@@ -36,7 +36,7 @@ import os
|
||||
|
||||
# -- Project information -----------------------------------------------------
|
||||
|
||||
project = "BlenderBIM Add-on"
|
||||
project = "Bonsai"
|
||||
copyright = "2020-2024 IfcOpenShell Contributors"
|
||||
author = "IfcOpenShell Contributors"
|
||||
|
||||
@@ -89,7 +89,7 @@ html_logo = "https://bonsaibim.org/assets/images/blender/blender-logo.png"
|
||||
html_theme_options = {
|
||||
"source_repository": "https://github.com/IfcOpenShell/IfcOpenShell/",
|
||||
"source_branch": "v0.8.0",
|
||||
"source_directory": "src/blenderbim/docs/",
|
||||
"source_directory": "src/bonsai/docs/",
|
||||
"light_css_variables": {
|
||||
"color-brand-primary": "#39b54a",
|
||||
"color-brand-content": "#39b54a",
|
||||
@@ -132,7 +132,7 @@ html_theme_options = {
|
||||
},
|
||||
{
|
||||
"name": "GitHub",
|
||||
"url": "https://github.com/IfcOpenShell/IfcOpenShell/tree/v0.8.0/src/blenderbim/docs",
|
||||
"url": "https://github.com/IfcOpenShell/IfcOpenShell/tree/v0.8.0/src/bonsai/docs",
|
||||
"html": """
|
||||
<svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 16 16">
|
||||
<path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0 0 16 8c0-4.42-3.58-8-8-8z"></path>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
import bpy
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import blenderbim.tool as tool
|
||||
import bonsai.tool as tool
|
||||
|
||||
|
||||
class LibraryGenerator:
|
||||
@@ -183,7 +183,7 @@ class LibraryGenerator:
|
||||
self.create_type("IfcDoorType", "DEMO1", {"model_body": "Door", "plan_body": "Door-Annotation"})
|
||||
self.create_type("IfcFurnitureType", "BUNNY", {"model_body": "Bunny", "plan_body": "Bunny-Annotation"})
|
||||
|
||||
self.file.write("blenderbim-au-library.ifc")
|
||||
self.file.write("bonsai-au-library.ifc")
|
||||
|
||||
def create_layer_set_type(self, name, data):
|
||||
element = ifcopenshell.api.run("root.create_entity", self.file, ifc_class=data["type"], name=name)
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
import bpy
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import blenderbim.tool as tool
|
||||
import bonsai.tool as tool
|
||||
|
||||
|
||||
class LibraryGenerator:
|
||||
@@ -28,11 +28,9 @@ class LibraryGenerator:
|
||||
ifcopenshell.api.post_listeners = {}
|
||||
|
||||
self.file = ifcopenshell.api.run("project.create_file")
|
||||
self.project = ifcopenshell.api.run(
|
||||
"root.create_entity", self.file, ifc_class="IfcProject", name="BlenderBIM Demo"
|
||||
)
|
||||
self.project = ifcopenshell.api.run("root.create_entity", self.file, ifc_class="IfcProject", name="Bonsai Demo")
|
||||
self.library = ifcopenshell.api.run(
|
||||
"root.create_entity", self.file, ifc_class="IfcProjectLibrary", name="BlenderBIM Demo Library"
|
||||
"root.create_entity", self.file, ifc_class="IfcProjectLibrary", name="Bonsai Demo Library"
|
||||
)
|
||||
ifcopenshell.api.run(
|
||||
"project.assign_declaration", self.file, definitions=[self.library], relating_context=self.project
|
||||
|
||||
@@ -20,13 +20,13 @@ import os
|
||||
import bpy
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import blenderbim.tool as tool
|
||||
import bonsai.tool as tool
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
# When run from Blender
|
||||
BLEND_DIR = os.path.dirname(bpy.data.filepath)
|
||||
OUT_PATH = os.path.join(BLEND_DIR, "..", "blenderbim", "bim", "data", "libraries", "IFC4 Entourage Library.ifc")
|
||||
OUT_PATH = os.path.join(BLEND_DIR, "..", "bonsai", "bim", "data", "libraries", "IFC4 Entourage Library.ifc")
|
||||
|
||||
|
||||
class LibraryGenerator:
|
||||
|
||||
@@ -1929,7 +1929,7 @@ class LibraryGenerator:
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
path = Path(__file__).parents[1] / "blenderbim/bim/data/libraries"
|
||||
path = Path(__file__).parents[1] / "bonsai/bim/data/libraries"
|
||||
LibraryGenerator().generate(
|
||||
"Non-structural assets library", output_filename=str(path / "IFC4 Furniture Library.ifc")
|
||||
)
|
||||
|
||||
@@ -22,7 +22,7 @@ import csv
|
||||
import random
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import blenderbim.tool as tool
|
||||
import bonsai.tool as tool
|
||||
from math import cos, sin, tan, pi
|
||||
from pathlib import Path
|
||||
from itertools import chain
|
||||
@@ -34,7 +34,7 @@ from random import uniform
|
||||
|
||||
# When run from Blender
|
||||
BLEND_DIR = os.path.dirname(bpy.data.filepath)
|
||||
OUT_PATH = os.path.join(BLEND_DIR, "..", "blenderbim", "bim", "data", "libraries", "IFC4 Landscape Library.ifc")
|
||||
OUT_PATH = os.path.join(BLEND_DIR, "..", "bonsai", "bim", "data", "libraries", "IFC4 Landscape Library.ifc")
|
||||
|
||||
SimpleTreeParams = namedtuple("SimpleTreeParams", "plant_height crown_diameter trunk_diameter")
|
||||
LowPolyTreeParams = namedtuple(
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
import bpy
|
||||
import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import blenderbim.tool as tool
|
||||
import bonsai.tool as tool
|
||||
|
||||
|
||||
class LibraryGenerator:
|
||||
@@ -28,11 +28,9 @@ class LibraryGenerator:
|
||||
ifcopenshell.api.post_listeners = {}
|
||||
|
||||
self.file = ifcopenshell.api.run("project.create_file")
|
||||
self.project = ifcopenshell.api.run(
|
||||
"root.create_entity", self.file, ifc_class="IfcProject", name="BlenderBIM Demo"
|
||||
)
|
||||
self.project = ifcopenshell.api.run("root.create_entity", self.file, ifc_class="IfcProject", name="Bonsai Demo")
|
||||
self.library = ifcopenshell.api.run(
|
||||
"root.create_entity", self.file, ifc_class="IfcProjectLibrary", name="BlenderBIM Demo Library"
|
||||
"root.create_entity", self.file, ifc_class="IfcProjectLibrary", name="Bonsai Demo Library"
|
||||
)
|
||||
ifcopenshell.api.run(
|
||||
"project.assign_declaration", self.file, definitions=[self.library], relating_context=self.library
|
||||
@@ -66,7 +64,7 @@ class LibraryGenerator:
|
||||
{"body": "Mobile Crane 50T", "clearance": "Mobile Crane 50T - Clearance"},
|
||||
)
|
||||
|
||||
self.file.write("blenderbim-site-library.ifc")
|
||||
self.file.write("bonsai-site-library.ifc")
|
||||
|
||||
def create_type(self, ifc_class, name, representations):
|
||||
element = ifcopenshell.api.run("root.create_entity", self.file, ifc_class=ifc_class, name=name)
|
||||
|
||||
@@ -229,7 +229,7 @@ class LibraryGenerator:
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
path = Path(__file__).parents[1] / "blenderbim/bim/data/libraries"
|
||||
path = Path(__file__).parents[1] / "bonsai/bim/data/libraries"
|
||||
LibraryGenerator().generate(parse_profiles_type="EU", output_filename=str(path / "IFC4 EU Steel.ifc"))
|
||||
LibraryGenerator().generate(parse_profiles_type="AU", output_filename=str(path / "IFC4 AU Steel.ifc"))
|
||||
LibraryGenerator().generate(parse_profiles_type="US", output_filename=str(path / "IFC4 US Steel.ifc"))
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
|
||||
import ifcopenshell
|
||||
import blenderbim.tool as tool
|
||||
import bonsai.tool as tool
|
||||
|
||||
import bpy
|
||||
import bmesh
|
||||
|
||||
@@ -55,7 +55,7 @@ class Describer:
|
||||
f.write(json.dumps(self.enum_descriptions, indent=4))
|
||||
|
||||
def get_html_sources(self):
|
||||
html_dir = "/home/dion/Projects/IfcOpenShell/src/blenderbim/descriptions/IFC4_3/RC1/HTML"
|
||||
html_dir = "/home/dion/Projects/IfcOpenShell/src/bonsai/descriptions/IFC4_3/RC1/HTML"
|
||||
for filename in Path(html_dir).rglob("*.htm"):
|
||||
if "lexical" not in str(filename):
|
||||
continue
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# This can be run using `blender -b -P headless_import.py`
|
||||
|
||||
import bpy
|
||||
from blenderbim.bim.ifc import IfcStore
|
||||
from bonsai.bim.ifc import IfcStore
|
||||
|
||||
# When federating, you may wish to manually specify the origin to ensure models
|
||||
# with different or arbitrary origin conventions will turn up in the right spot.
|
||||
|
||||
@@ -20,14 +20,14 @@
|
||||
|
||||
It is useful when an annotation drawing has been created on windows and you want to recreate the
|
||||
drawig in linux.
|
||||
In this case, blenderbim would tell you that can't load "stylesheet" or "markers" or "symbols" or "patterns" folder.
|
||||
In this case, bonsai would tell you that can't load "stylesheet" or "markers" or "symbols" or "patterns" folder.
|
||||
If this happens, this script comes in rescue!
|
||||
Basically, as the path is stored in a string, the script replaces the existing sep char with the right one.
|
||||
It works on the active ifc file (if exists).
|
||||
|
||||
"""
|
||||
|
||||
import blenderbim.tool as tool
|
||||
import bonsai.tool as tool
|
||||
import ifcopenshell
|
||||
import sys
|
||||
|
||||
|
||||
Reference in New Issue
Block a user