From 4c3051267e016e7fe9302b3942fddec658dba2fe Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Tue, 7 Apr 2020 12:02:44 +1000 Subject: [PATCH] Repackage BlenderBIM Add-on in single add-on dir thanks to Stephen Leger from Archipack --- src/ifcblenderexport/Makefile | 70 +++--- src/ifcblenderexport/blenderbim/__init__.py | 202 +----------------- .../blenderbim/scripts/addons/bim/__init__.py | 187 ++++++++++++++++ .../{ => scripts/addons/bim}/bcf.py | 0 .../{ => scripts/addons/bim}/cut_ifc.py | 0 .../bim}/data/class/classifications.csv | 0 .../addons/bim}/data/class/references.csv | 0 .../bim}/data/constraint/objectives.csv | 0 .../addons/bim}/data/diagrams/.gitkeep | 0 .../addons/bim}/data/doc/foo/bar.pdf | Bin .../addons/bim}/data/doc/proxy.opass | 0 .../addons/bim}/data/doc/test.pdf | Bin .../bim}/data/fonts/OpenGost Type B TT.ttf | Bin .../material/beam/Pset_MaterialCommon.csv | 0 .../material/beam/Pset_MaterialMechanical.csv | 0 .../addons/bim}/data/mpass/Material.mpass | 0 .../addons/bim}/data/mpass/shader.blend | Bin .../addons/bim}/data/owner/organisation.json | 0 .../addons/bim}/data/owner/person.json | 0 .../data/pset/Pset_DoorCommon/typical.csv | 0 .../pset/Pset_FurnitureTypeCommon/monkey.csv | 0 .../monkeyoverride.csv | 0 .../addons/bim}/data/sheets/SHEET.svg | 0 .../addons/bim}/data/styles/default.css | 0 .../addons/bim}/data/templates/markers.svg | 0 .../addons/bim}/data/templates/patterns.svg | 0 .../addons/bim}/data/templates/titleblock.svg | 0 .../addons/bim}/data/templates/view-title.svg | 0 .../typical/IfcWindowLiningProperties.csv | 0 .../{ => scripts/addons/bim}/export_ifc.py | 0 .../{ => scripts/addons/bim}/helper.py | 0 .../{ => scripts/addons/bim}/ifc.py | 0 .../{ => scripts/addons/bim}/import_ifc.py | 0 .../{ => scripts/addons/bim}/operator.py | 0 .../{ => scripts/addons/bim}/prop.py | 0 .../{ => scripts/addons/bim}/schema.py | 0 .../schema/IfcBoundaryCondition_IFC4.json | 0 .../addons/bim}/schema/IfcContext_IFC4.json | 0 .../bim}/schema/IfcElementType_IFC4.json | 0 .../addons/bim}/schema/IfcElement_IFC4.json | 0 .../schema/IfcMaterialDefinition_IFC4.json | 0 .../IfcParameterizedProfileDef_IFC4.json | 0 .../bim}/schema/IfcSpatialElement_IFC4.json | 0 .../bim}/schema/IfcStructural_IFC4.json | 0 .../addons/bim}/schema/Pset_Custom.ifc | 0 .../addons/bim}/schema/Pset_IFC4_ADD2.ifc | 0 .../addons/bim}/schema/ifc_types_IFC4.json | 0 .../addons/bim}/schema/template.ifc | 0 .../{ => scripts/addons/bim}/sheeter.py | 0 .../blenderbim/{ => scripts/addons/bim}/ui.py | 0 src/ifcpatch/ifcpatch.py | 3 + 51 files changed, 226 insertions(+), 236 deletions(-) create mode 100644 src/ifcblenderexport/blenderbim/scripts/addons/bim/__init__.py rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/bcf.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/cut_ifc.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/class/classifications.csv (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/class/references.csv (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/constraint/objectives.csv (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/diagrams/.gitkeep (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/doc/foo/bar.pdf (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/doc/proxy.opass (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/doc/test.pdf (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/fonts/OpenGost Type B TT.ttf (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/material/beam/Pset_MaterialCommon.csv (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/material/beam/Pset_MaterialMechanical.csv (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/mpass/Material.mpass (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/mpass/shader.blend (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/owner/organisation.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/owner/person.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/pset/Pset_DoorCommon/typical.csv (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/pset/Pset_FurnitureTypeCommon/monkey.csv (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/pset/Pset_FurnitureTypeCommon/monkeyoverride.csv (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/sheets/SHEET.svg (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/styles/default.css (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/templates/markers.svg (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/templates/patterns.svg (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/templates/titleblock.svg (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/templates/view-title.svg (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/data/window/typical/IfcWindowLiningProperties.csv (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/export_ifc.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/helper.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/ifc.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/import_ifc.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/operator.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/prop.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/IfcBoundaryCondition_IFC4.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/IfcContext_IFC4.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/IfcElementType_IFC4.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/IfcElement_IFC4.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/IfcMaterialDefinition_IFC4.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/IfcParameterizedProfileDef_IFC4.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/IfcSpatialElement_IFC4.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/IfcStructural_IFC4.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/Pset_Custom.ifc (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/Pset_IFC4_ADD2.ifc (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/ifc_types_IFC4.json (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/schema/template.ifc (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/sheeter.py (100%) rename src/ifcblenderexport/blenderbim/{ => scripts/addons/bim}/ui.py (100%) diff --git a/src/ifcblenderexport/Makefile b/src/ifcblenderexport/Makefile index a1f10f7223..e400710380 100644 --- a/src/ifcblenderexport/Makefile +++ b/src/ifcblenderexport/Makefile @@ -23,26 +23,23 @@ endif rm -rf dist mkdir -p dist/working mkdir -p dist/blenderbim -ifneq ($(PLATFORM), win) - mkdir -p dist/lib -endif cp -r blenderbim/* dist/blenderbim/ cd dist/working && wget https://s3.amazonaws.com/ifcopenshell-builds/ifcblender-python-37-v0.6.0-e44221c-$(PLATFORM)64.zip cd dist/working && unzip ifcblender* - cp -r dist/working/io_import_scene_ifc/ifcopenshell dist/ + cp -r dist/working/io_import_scene_ifc/ifcopenshell dist/blenderbim/scripts/addons/ # See bug #812 cd dist/working && wget https://raw.githubusercontent.com/IfcOpenShell/IfcOpenShell/v0.6.0/src/ifcblenderexport/occ_utils.py - cd dist/working && mv occ_utils.py ../ifcopenshell/geom/occ_utils.py + cd dist/working && mv occ_utils.py ../blenderbim/scripts/addons/ifcopenshell/geom/occ_utils.py rm -rf dist/working mkdir dist/working cd dist/working && wget $(PYTHONOCC_URL) cd dist/working && tar -xjvf pythonocc-core* ifeq ($(PLATFORM), win) - cd dist/working && cp -r Lib/site-packages/OCC ../ + cd dist/working && cp -r Lib/site-packages/OCC ../blenderbim/scripts/addons/ else - cd dist/working && cp -r lib/python3.7/site-packages/OCC ../ + cd dist/working && cp -r lib/python3.7/site-packages/OCC ../blenderbim/scripts/addons/ endif rm -rf dist/working @@ -50,9 +47,10 @@ endif cd dist/working && wget $(OCE_URL) cd dist/working && tar -xjvf oce* ifeq ($(PLATFORM), win) - cd dist/working && cp -r Library/bin/* ../OCC/ + cd dist/working && cp -r Library/bin/* ../blenderbim/scripts/addons/OCC/ else - cd dist/working && cp -r lib/* ../lib/ + # Unix Conda builds of PythonOCC expect OCE libs to have a RPATH of ../../../ + cd dist/working && cp -r lib/* ../blenderbim/ endif rm -rf dist/working @@ -60,9 +58,9 @@ endif cd dist/working && wget $(TBB_URL) cd dist/working && tar -xjvf tbb* ifeq ($(PLATFORM), win) - cd dist/working && cp -r Library/bin/* ../OCC/ + cd dist/working && cp -r Library/bin/* ../blenderbim/scripts/addons/OCC/ else - cd dist/working && cp -r lib/* ../lib/ + cd dist/working && cp -r lib/* ../blenderbim/ endif rm -rf dist/working @@ -70,80 +68,80 @@ ifeq ($(PLATFORM), macos) mkdir dist/working cd dist/working && wget https://blenderbim.org/builds/patch-blender28-bim-macos.zip cd dist/working && unzip patch* - cd dist/working && cp -r *.dylib ../lib/ + cd dist/working && cp -r *.dylib ../blenderbim/ rm -rf dist/working endif mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/d6/fd/eb8c212053addd941cc90baac307c00ac246ac3fce7166b86434c6eae963/pystache-0.5.4.tar.gz cd dist/working && tar -xzvf pystache* - cd dist/working/pystache-0.5.4/ && python setup.py build && cp -r build/lib/pystache ../../ + cd dist/working/pystache-0.5.4/ && python setup.py build && cp -r build/lib/pystache ../../blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/79/e8/7eb2ba188eda14a4b47e33b51f3b4978985f4116655c699bcd18c79279b5/svgwrite-1.3.1.zip cd dist/working && unzip svgwrite* - cp -r dist/working/svgwrite-1.3.1/svgwrite dist/ + cp -r dist/working/svgwrite-1.3.1/svgwrite dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://github.com/Moult/deepdiff/archive/master.zip cd dist/working && unzip master.zip - cp -r dist/working/deepdiff-master/deepdiff dist/ + cp -r dist/working/deepdiff-master/deepdiff dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/00/55/ce2cbc6d64034b30cad81a29ba61bdba456f190f5e83c09831304bf68d6b/jsonpickle-1.2.tar.gz cd dist/working && tar -xzvf jsonpickle* - cp -r dist/working/jsonpickle-1.2/jsonpickle dist/ + cp -r dist/working/jsonpickle-1.2/jsonpickle dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/a3/b7/d4d69641cbe707a45c23b190f2d717466ba5accc4c70b5f7a8a450387895/ordered-set-3.1.1.tar.gz cd dist/working && tar -xzvf ordered-set* - cp -r dist/working/ordered-set-3.1.1/ordered_set.py dist/ + cp -r dist/working/ordered-set-3.1.1/ordered_set.py dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/00/32/8076fa13e832bb4dcff379f18f228e5a53412be0631808b9ca2610c0f566/pyparsing-2.4.5.tar.gz cd dist/working && tar -xzvf pyparsing* - cp -r dist/working/pyparsing-2.4.5/pyparsing.py dist/ + cp -r dist/working/pyparsing-2.4.5/pyparsing.py dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/82/c3/534ddba230bd4fbbd3b7a3d35f3341d014cca213f369a9940925e7e5f691/pytz-2019.3.tar.gz cd dist/working && tar -xzvf pytz* - cp -r dist/working/pytz-2019.3/pytz dist/ + cp -r dist/working/pytz-2019.3/pytz dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/be/ed/5bbc91f03fa4c839c4c7360375da77f9659af5f7086b7a7bdda65771c8e0/python-dateutil-2.8.1.tar.gz cd dist/working && tar -xzvf python-dateutil* - cp -r dist/working/python-dateutil-2.8.1/dateutil dist/ + cp -r dist/working/python-dateutil-2.8.1/dateutil dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/21/9f/b251f7f8a76dec1d6651be194dfba8fb8d7781d10ab3987190de8391d08e/six-1.14.0.tar.gz cd dist/working && tar -xzvf six* - cp -r dist/working/six-1.14.0/six.py dist/ + cp -r dist/working/six-1.14.0/six.py dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/bb/41/ad9ce53bb978b68af8ae415293cafc89b165b8ad55a593725299dca76729/xmlschema-1.1.1.tar.gz cd dist/working && tar -xzvf xmlschema* - cp -r dist/working/xmlschema-1.1.1/xmlschema dist/ + cp -r dist/working/xmlschema-1.1.1/xmlschema dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://files.pythonhosted.org/packages/12/f9/f9960222d5274944b01391749e55e4dcdf28d8f0c108b64ac931ceff6fdb/elementpath-1.4.3.tar.gz cd dist/working && tar -xzvf elementpath* - cp -r dist/working/elementpath-1.4.3/elementpath dist/ + cp -r dist/working/elementpath-1.4.3/elementpath dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working cd dist/working && wget https://github.com/Moult/BCF-Plugin-FreeCAD/archive/fix-headless.zip cd dist/working && unzip fix-headless* - cp -r dist/working/BCF-Plugin-FreeCAD-fix-headless/bcfplugin dist/ + cp -r dist/working/BCF-Plugin-FreeCAD-fix-headless/bcfplugin dist/blenderbim/scripts/addons/ rm -rf dist/working mkdir dist/working @@ -152,33 +150,15 @@ endif cd dist/working && wget https://raw.githubusercontent.com/buildingSMART/BCF-XML/release_2_1/Schemas/markup.xsd cd dist/working && wget https://raw.githubusercontent.com/buildingSMART/BCF-XML/release_2_1/Schemas/version.xsd cd dist/working && wget https://raw.githubusercontent.com/buildingSMART/BCF-XML/release_2_1/Schemas/visinfo.xsd - mkdir dist/bcfplugin/schemas/ - cp -r dist/working/*.xsd dist/bcfplugin/schemas/ + mkdir dist/blenderbim/scripts/addons/bcfplugin/schemas/ + cp -r dist/working/*.xsd dist/blenderbim/scripts/addons/bcfplugin/schemas/ rm -rf dist/working - cd dist/ && wget https://raw.githubusercontent.com/IfcOpenShell/IfcOpenShell/v0.6.0/src/ifcdiff/ifcdiff.py + cd dist/blenderbim/scripts/addons/ && wget https://raw.githubusercontent.com/IfcOpenShell/IfcOpenShell/v0.6.0/src/ifcdiff/ifcdiff.py cd dist/blenderbim && sed -i "s/999999/$(VERSION)/" __init__.py cd dist && zip -r blender28-bim-$(VERSION)-$(PLATFORM).zip ./* rm -rf dist/blenderbim - rm -rf dist/ifcopenshell - rm -rf dist/OCC - rm -rf dist/pystache - rm -rf dist/svgwrite - rm -rf dist/deepdiff - rm -rf dist/jsonpickle - rm -rf dist/ordered_set.py - rm -rf dist/pyparsing.py - rm -rf dist/bcfplugin - rm -rf dist/dateutil - rm -rf dist/elementpath - rm -rf dist/pytz - rm -rf dist/six.py - rm -rf dist/xmlschema - rm -rf dist/ifcdiff.py -ifneq ($(PLATFORM), win) - rm -rf dist/lib -endif .PHONY: clean clean: diff --git a/src/ifcblenderexport/blenderbim/__init__.py b/src/ifcblenderexport/blenderbim/__init__.py index 10a641fc8b..ec888680ad 100644 --- a/src/ifcblenderexport/blenderbim/__init__.py +++ b/src/ifcblenderexport/blenderbim/__init__.py @@ -10,203 +10,23 @@ bl_info = { "category": "Import-Export" } -# Check if we are running in Blender before loading, to allow for multiprocessing -import sys import os -bpy = sys.modules.get('bpy') +import site -if bpy is not None: - cwd = os.path.dirname(os.path.realpath(__file__)) - # This workaround is for Mac and Linux Conda builds, which have an rpath set - # to $ORIGIN/../../../ - lib_dir = os.path.join(cwd, '..', 'lib') - if os.path.isdir(lib_dir): - import shutil - files = os.listdir(lib_dir) - for f in files: - shutil.move(os.path.join(lib_dir, f), os.path.join(lib_dir, '..', '..', '..')) +# process ifcopenshell.pth in /scripts/addons +site.addsitedir(os.path.join(os.path.dirname(os.path.realpath(__file__)), "scripts", "addons")) - import bpy - from . import ui, prop, operator +import bim as blenderbim +import ifcopenshell - classes = ( - operator.AssignClass, - operator.SelectClass, - operator.SelectType, - operator.SelectBcfFile, - operator.GetBcfTopics, - operator.ViewBcfTopic, - operator.ActivateBcfViewpoint, - operator.OpenBcfFileReference, - operator.OpenBcfReferenceLink, - operator.OpenBcfBimSnippetSchema, - operator.OpenBcfBimSnippetReference, - operator.OpenBcfDocumentReference, - operator.SelectFeaturesDir, - operator.SelectDiffJsonFile, - operator.SelectDiffNewFile, - operator.SelectDiffOldFile, - operator.SelectDataDir, - operator.SelectSchemaDir, - operator.SelectIfcFile, - operator.ValidateIfcFile, - operator.ExportIFC, - operator.ImportIFC, - operator.ColourByClass, - operator.ColourByAttribute, - operator.ColourByPset, - operator.ResetObjectColours, - operator.ApproveClass, - operator.RejectClass, - operator.SelectAudited, - operator.RejectElement, - operator.SelectExternalMaterialDir, - operator.AddSweptSolid, - operator.RemoveSweptSolid, - operator.AssignSweptSolidOuterCurve, - operator.SelectSweptSolidOuterCurve, - operator.AddSweptSolidInnerCurve, - operator.SelectSweptSolidInnerCurves, - operator.AssignSweptSolidExtrusion, - operator.SelectSweptSolidExtrusion, - operator.AssignPset, - operator.UnassignPset, - operator.AddPset, - operator.RemovePset, - operator.AddOverridePset, - operator.RemoveOverridePset, - operator.AddQto, - operator.RemoveQto, - operator.AddMaterialPset, - operator.RemoveMaterialPset, - operator.AddDocument, - operator.RemoveDocument, - operator.GenerateGlobalId, - operator.AddAttribute, - operator.RemoveAttribute, - operator.AddMaterialAttribute, - operator.RemoveMaterialAttribute, - operator.QuickProjectSetup, - operator.SelectGlobalId, - operator.SelectAttribute, - operator.SelectPset, - operator.CreateAggregate, - operator.EditAggregate, - operator.SaveAggregate, - operator.ExplodeAggregate, - operator.AssignClassification, - operator.UnassignClassification, - operator.RemoveClassification, - operator.FetchLibraryInformation, - operator.FetchExternalMaterial, - operator.FetchObjectPassport, - operator.AddSubcontext, - operator.RemoveSubcontext, - operator.CutSection, - operator.CreateSheet, - operator.OpenSheet, - operator.OpenCompiledSheet, - operator.AddViewToSheet, - operator.CreateSheets, - operator.GenerateDigitalTwin, - operator.CreateView, - operator.OpenView, - operator.ActivateView, - operator.ExecuteIfcDiff, - operator.AssignContext, - operator.SetViewPreset1, - operator.OpenUpstream, - operator.Uninstall, - prop.BcfTopic, - prop.BcfTopicLabel, - prop.BcfTopicFile, - prop.BcfTopicLink, - prop.BcfTopicDocumentReference, - prop.BcfTopicRelatedTopic, - prop.Subcontext, - prop.BIMProperties, - prop.BCFProperties, - prop.DocProperties, - prop.BIMLibrary, - prop.MapConversion, - prop.TargetCRS, - prop.Attribute, - prop.BoundaryCondition, - prop.PsetQto, - prop.Document, - prop.Classification, - prop.GlobalId, - prop.BIMObjectProperties, - prop.BIMMaterialProperties, - prop.SweptSolid, - prop.BIMMeshProperties, - prop.BIMCameraProperties, - ui.BIM_PT_documentation, - ui.BIM_PT_bim, - ui.BIM_PT_search, - ui.BIM_PT_bcf, - ui.BIM_PT_owner, - ui.BIM_PT_context, - ui.BIM_PT_qa, - ui.BIM_PT_library, - ui.BIM_PT_gis, - ui.BIM_PT_diff, - ui.BIM_PT_mvd, - ui.BIM_PT_material, - ui.BIM_PT_mesh, - ui.BIM_PT_object, - ui.BIM_PT_camera, - ui.BIM_UL_topics, - ui.BIM_ADDON_preferences, - ) - def menu_func_export(self, context): - self.layout.operator(operator.ExportIFC.bl_idname, - text="Industry Foundation Classes (.ifc)") +def register(): + blenderbim.register() - def menu_func_import(self, context): - self.layout.operator(operator.ImportIFC.bl_idname, - text="Industry Foundation Classes (.ifc)") - def on_register(scene): - prop.setDefaultProperties(scene) - bpy.app.handlers.scene_update_post.remove(on_register) +def unregister(): + blenderbim.unregister() - def register(): - for cls in classes: - bpy.utils.register_class(cls) - bpy.app.handlers.depsgraph_update_post.append(on_register) - bpy.app.handlers.load_post.append(prop.setDefaultProperties) - bpy.types.TOPBAR_MT_file_export.append(menu_func_export) - bpy.types.TOPBAR_MT_file_import.append(menu_func_import) - bpy.types.Scene.BIMProperties = bpy.props.PointerProperty(type=prop.BIMProperties) - bpy.types.Scene.BCFProperties = bpy.props.PointerProperty(type=prop.BCFProperties) - bpy.types.Scene.DocProperties = bpy.props.PointerProperty(type=prop.DocProperties) - bpy.types.Scene.BIMLibrary = bpy.props.PointerProperty(type=prop.BIMLibrary) - bpy.types.Scene.MapConversion = bpy.props.PointerProperty(type=prop.MapConversion) - bpy.types.Scene.TargetCRS = bpy.props.PointerProperty(type=prop.TargetCRS) - bpy.types.Object.BIMObjectProperties = bpy.props.PointerProperty(type=prop.BIMObjectProperties) - bpy.types.Collection.BIMObjectProperties = bpy.props.PointerProperty(type=prop.BIMObjectProperties) - bpy.types.Material.BIMMaterialProperties = bpy.props.PointerProperty(type=prop.BIMMaterialProperties) - bpy.types.Mesh.BIMMeshProperties = bpy.props.PointerProperty(type=prop.BIMMeshProperties) - bpy.types.Camera.BIMCameraProperties = bpy.props.PointerProperty(type=prop.BIMCameraProperties) - def unregister(): - for cls in reversed(classes): - bpy.utils.unregister_class(cls) - bpy.app.handlers.load_post.remove(prop.setDefaultProperties) - bpy.types.TOPBAR_MT_file_export.remove(menu_func_export) - bpy.types.TOPBAR_MT_file_import.remove(menu_func_import) - del(bpy.types.Scene.BIMProperties) - del(bpy.types.Scene.BCFProperties) - del(bpy.types.Scene.DocProperties) - del(bpy.types.Scene.MapConversion) - del(bpy.types.Scene.TargetCRS) - del(bpy.types.Object.BIMObjectProperties) - del(bpy.types.Collection.BIMObjectProperties) - del(bpy.types.Material.BIMMaterialProperties) - del(bpy.types.Mesh.BIMMeshProperties) - del(bpy.types.Camera.BIMCameraProperties) - - if __name__ == "__main__": - register() +if __name__ == "__main__": + register() diff --git a/src/ifcblenderexport/blenderbim/scripts/addons/bim/__init__.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/__init__.py new file mode 100644 index 0000000000..cbac52d71e --- /dev/null +++ b/src/ifcblenderexport/blenderbim/scripts/addons/bim/__init__.py @@ -0,0 +1,187 @@ +# Check if we are running in Blender before loading, to allow for multiprocessing +import sys +import os +bpy = sys.modules.get('bpy') + +if bpy is not None: + import bpy + from . import ui, prop, operator + + classes = ( + operator.AssignClass, + operator.SelectClass, + operator.SelectType, + operator.SelectBcfFile, + operator.GetBcfTopics, + operator.ViewBcfTopic, + operator.ActivateBcfViewpoint, + operator.OpenBcfFileReference, + operator.OpenBcfReferenceLink, + operator.OpenBcfBimSnippetSchema, + operator.OpenBcfBimSnippetReference, + operator.OpenBcfDocumentReference, + operator.SelectFeaturesDir, + operator.SelectDiffJsonFile, + operator.SelectDiffNewFile, + operator.SelectDiffOldFile, + operator.SelectDataDir, + operator.SelectSchemaDir, + operator.SelectIfcFile, + operator.ValidateIfcFile, + operator.ExportIFC, + operator.ImportIFC, + operator.ColourByClass, + operator.ColourByAttribute, + operator.ColourByPset, + operator.ResetObjectColours, + operator.ApproveClass, + operator.RejectClass, + operator.SelectAudited, + operator.RejectElement, + operator.SelectExternalMaterialDir, + operator.AddSweptSolid, + operator.RemoveSweptSolid, + operator.AssignSweptSolidOuterCurve, + operator.SelectSweptSolidOuterCurve, + operator.AddSweptSolidInnerCurve, + operator.SelectSweptSolidInnerCurves, + operator.AssignSweptSolidExtrusion, + operator.SelectSweptSolidExtrusion, + operator.AssignPset, + operator.UnassignPset, + operator.AddPset, + operator.RemovePset, + operator.AddOverridePset, + operator.RemoveOverridePset, + operator.AddQto, + operator.RemoveQto, + operator.AddMaterialPset, + operator.RemoveMaterialPset, + operator.AddDocument, + operator.RemoveDocument, + operator.GenerateGlobalId, + operator.AddAttribute, + operator.RemoveAttribute, + operator.AddMaterialAttribute, + operator.RemoveMaterialAttribute, + operator.QuickProjectSetup, + operator.SelectGlobalId, + operator.SelectAttribute, + operator.SelectPset, + operator.CreateAggregate, + operator.EditAggregate, + operator.SaveAggregate, + operator.ExplodeAggregate, + operator.AssignClassification, + operator.UnassignClassification, + operator.RemoveClassification, + operator.FetchLibraryInformation, + operator.FetchExternalMaterial, + operator.FetchObjectPassport, + operator.AddSubcontext, + operator.RemoveSubcontext, + operator.CutSection, + operator.CreateSheet, + operator.OpenSheet, + operator.OpenCompiledSheet, + operator.AddViewToSheet, + operator.CreateSheets, + operator.GenerateDigitalTwin, + operator.CreateView, + operator.OpenView, + operator.ActivateView, + operator.ExecuteIfcDiff, + operator.AssignContext, + operator.SetViewPreset1, + operator.OpenUpstream, + operator.Uninstall, + prop.BcfTopic, + prop.BcfTopicLabel, + prop.BcfTopicFile, + prop.BcfTopicLink, + prop.BcfTopicDocumentReference, + prop.BcfTopicRelatedTopic, + prop.Subcontext, + prop.BIMProperties, + prop.BCFProperties, + prop.DocProperties, + prop.BIMLibrary, + prop.MapConversion, + prop.TargetCRS, + prop.Attribute, + prop.BoundaryCondition, + prop.PsetQto, + prop.Document, + prop.Classification, + prop.GlobalId, + prop.BIMObjectProperties, + prop.BIMMaterialProperties, + prop.SweptSolid, + prop.BIMMeshProperties, + prop.BIMCameraProperties, + ui.BIM_PT_documentation, + ui.BIM_PT_bim, + ui.BIM_PT_search, + ui.BIM_PT_bcf, + ui.BIM_PT_owner, + ui.BIM_PT_context, + ui.BIM_PT_qa, + ui.BIM_PT_library, + ui.BIM_PT_gis, + ui.BIM_PT_diff, + ui.BIM_PT_mvd, + ui.BIM_PT_material, + ui.BIM_PT_mesh, + ui.BIM_PT_object, + ui.BIM_PT_camera, + ui.BIM_UL_topics, + ui.BIM_ADDON_preferences, + ) + + def menu_func_export(self, context): + self.layout.operator(operator.ExportIFC.bl_idname, + text="Industry Foundation Classes (.ifc)") + + def menu_func_import(self, context): + self.layout.operator(operator.ImportIFC.bl_idname, + text="Industry Foundation Classes (.ifc)") + + def on_register(scene): + prop.setDefaultProperties(scene) + bpy.app.handlers.scene_update_post.remove(on_register) + + def register(): + for cls in classes: + bpy.utils.register_class(cls) + bpy.app.handlers.depsgraph_update_post.append(on_register) + bpy.app.handlers.load_post.append(prop.setDefaultProperties) + bpy.types.TOPBAR_MT_file_export.append(menu_func_export) + bpy.types.TOPBAR_MT_file_import.append(menu_func_import) + bpy.types.Scene.BIMProperties = bpy.props.PointerProperty(type=prop.BIMProperties) + bpy.types.Scene.BCFProperties = bpy.props.PointerProperty(type=prop.BCFProperties) + bpy.types.Scene.DocProperties = bpy.props.PointerProperty(type=prop.DocProperties) + bpy.types.Scene.BIMLibrary = bpy.props.PointerProperty(type=prop.BIMLibrary) + bpy.types.Scene.MapConversion = bpy.props.PointerProperty(type=prop.MapConversion) + bpy.types.Scene.TargetCRS = bpy.props.PointerProperty(type=prop.TargetCRS) + bpy.types.Object.BIMObjectProperties = bpy.props.PointerProperty(type=prop.BIMObjectProperties) + bpy.types.Collection.BIMObjectProperties = bpy.props.PointerProperty(type=prop.BIMObjectProperties) + bpy.types.Material.BIMMaterialProperties = bpy.props.PointerProperty(type=prop.BIMMaterialProperties) + bpy.types.Mesh.BIMMeshProperties = bpy.props.PointerProperty(type=prop.BIMMeshProperties) + bpy.types.Camera.BIMCameraProperties = bpy.props.PointerProperty(type=prop.BIMCameraProperties) + + def unregister(): + for cls in reversed(classes): + bpy.utils.unregister_class(cls) + bpy.app.handlers.load_post.remove(prop.setDefaultProperties) + bpy.types.TOPBAR_MT_file_export.remove(menu_func_export) + bpy.types.TOPBAR_MT_file_import.remove(menu_func_import) + del(bpy.types.Scene.BIMProperties) + del(bpy.types.Scene.BCFProperties) + del(bpy.types.Scene.DocProperties) + del(bpy.types.Scene.MapConversion) + del(bpy.types.Scene.TargetCRS) + del(bpy.types.Object.BIMObjectProperties) + del(bpy.types.Collection.BIMObjectProperties) + del(bpy.types.Material.BIMMaterialProperties) + del(bpy.types.Mesh.BIMMeshProperties) + del(bpy.types.Camera.BIMCameraProperties) diff --git a/src/ifcblenderexport/blenderbim/bcf.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/bcf.py similarity index 100% rename from src/ifcblenderexport/blenderbim/bcf.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/bcf.py diff --git a/src/ifcblenderexport/blenderbim/cut_ifc.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/cut_ifc.py similarity index 100% rename from src/ifcblenderexport/blenderbim/cut_ifc.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/cut_ifc.py diff --git a/src/ifcblenderexport/blenderbim/data/class/classifications.csv b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/class/classifications.csv similarity index 100% rename from src/ifcblenderexport/blenderbim/data/class/classifications.csv rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/class/classifications.csv diff --git a/src/ifcblenderexport/blenderbim/data/class/references.csv b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/class/references.csv similarity index 100% rename from src/ifcblenderexport/blenderbim/data/class/references.csv rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/class/references.csv diff --git a/src/ifcblenderexport/blenderbim/data/constraint/objectives.csv b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/constraint/objectives.csv similarity index 100% rename from src/ifcblenderexport/blenderbim/data/constraint/objectives.csv rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/constraint/objectives.csv diff --git a/src/ifcblenderexport/blenderbim/data/diagrams/.gitkeep b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/diagrams/.gitkeep similarity index 100% rename from src/ifcblenderexport/blenderbim/data/diagrams/.gitkeep rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/diagrams/.gitkeep diff --git a/src/ifcblenderexport/blenderbim/data/doc/foo/bar.pdf b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/doc/foo/bar.pdf similarity index 100% rename from src/ifcblenderexport/blenderbim/data/doc/foo/bar.pdf rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/doc/foo/bar.pdf diff --git a/src/ifcblenderexport/blenderbim/data/doc/proxy.opass b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/doc/proxy.opass similarity index 100% rename from src/ifcblenderexport/blenderbim/data/doc/proxy.opass rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/doc/proxy.opass diff --git a/src/ifcblenderexport/blenderbim/data/doc/test.pdf b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/doc/test.pdf similarity index 100% rename from src/ifcblenderexport/blenderbim/data/doc/test.pdf rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/doc/test.pdf diff --git a/src/ifcblenderexport/blenderbim/data/fonts/OpenGost Type B TT.ttf b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/fonts/OpenGost Type B TT.ttf similarity index 100% rename from src/ifcblenderexport/blenderbim/data/fonts/OpenGost Type B TT.ttf rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/fonts/OpenGost Type B TT.ttf diff --git a/src/ifcblenderexport/blenderbim/data/material/beam/Pset_MaterialCommon.csv b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/material/beam/Pset_MaterialCommon.csv similarity index 100% rename from src/ifcblenderexport/blenderbim/data/material/beam/Pset_MaterialCommon.csv rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/material/beam/Pset_MaterialCommon.csv diff --git a/src/ifcblenderexport/blenderbim/data/material/beam/Pset_MaterialMechanical.csv b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/material/beam/Pset_MaterialMechanical.csv similarity index 100% rename from src/ifcblenderexport/blenderbim/data/material/beam/Pset_MaterialMechanical.csv rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/material/beam/Pset_MaterialMechanical.csv diff --git a/src/ifcblenderexport/blenderbim/data/mpass/Material.mpass b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/mpass/Material.mpass similarity index 100% rename from src/ifcblenderexport/blenderbim/data/mpass/Material.mpass rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/mpass/Material.mpass diff --git a/src/ifcblenderexport/blenderbim/data/mpass/shader.blend b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/mpass/shader.blend similarity index 100% rename from src/ifcblenderexport/blenderbim/data/mpass/shader.blend rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/mpass/shader.blend diff --git a/src/ifcblenderexport/blenderbim/data/owner/organisation.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/owner/organisation.json similarity index 100% rename from src/ifcblenderexport/blenderbim/data/owner/organisation.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/owner/organisation.json diff --git a/src/ifcblenderexport/blenderbim/data/owner/person.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/owner/person.json similarity index 100% rename from src/ifcblenderexport/blenderbim/data/owner/person.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/owner/person.json diff --git a/src/ifcblenderexport/blenderbim/data/pset/Pset_DoorCommon/typical.csv b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/pset/Pset_DoorCommon/typical.csv similarity index 100% rename from src/ifcblenderexport/blenderbim/data/pset/Pset_DoorCommon/typical.csv rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/pset/Pset_DoorCommon/typical.csv diff --git a/src/ifcblenderexport/blenderbim/data/pset/Pset_FurnitureTypeCommon/monkey.csv b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/pset/Pset_FurnitureTypeCommon/monkey.csv similarity index 100% rename from src/ifcblenderexport/blenderbim/data/pset/Pset_FurnitureTypeCommon/monkey.csv rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/pset/Pset_FurnitureTypeCommon/monkey.csv diff --git a/src/ifcblenderexport/blenderbim/data/pset/Pset_FurnitureTypeCommon/monkeyoverride.csv b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/pset/Pset_FurnitureTypeCommon/monkeyoverride.csv similarity index 100% rename from src/ifcblenderexport/blenderbim/data/pset/Pset_FurnitureTypeCommon/monkeyoverride.csv rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/pset/Pset_FurnitureTypeCommon/monkeyoverride.csv diff --git a/src/ifcblenderexport/blenderbim/data/sheets/SHEET.svg b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/sheets/SHEET.svg similarity index 100% rename from src/ifcblenderexport/blenderbim/data/sheets/SHEET.svg rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/sheets/SHEET.svg diff --git a/src/ifcblenderexport/blenderbim/data/styles/default.css b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/styles/default.css similarity index 100% rename from src/ifcblenderexport/blenderbim/data/styles/default.css rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/styles/default.css diff --git a/src/ifcblenderexport/blenderbim/data/templates/markers.svg b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/templates/markers.svg similarity index 100% rename from src/ifcblenderexport/blenderbim/data/templates/markers.svg rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/templates/markers.svg diff --git a/src/ifcblenderexport/blenderbim/data/templates/patterns.svg b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/templates/patterns.svg similarity index 100% rename from src/ifcblenderexport/blenderbim/data/templates/patterns.svg rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/templates/patterns.svg diff --git a/src/ifcblenderexport/blenderbim/data/templates/titleblock.svg b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/templates/titleblock.svg similarity index 100% rename from src/ifcblenderexport/blenderbim/data/templates/titleblock.svg rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/templates/titleblock.svg diff --git a/src/ifcblenderexport/blenderbim/data/templates/view-title.svg b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/templates/view-title.svg similarity index 100% rename from src/ifcblenderexport/blenderbim/data/templates/view-title.svg rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/templates/view-title.svg diff --git a/src/ifcblenderexport/blenderbim/data/window/typical/IfcWindowLiningProperties.csv b/src/ifcblenderexport/blenderbim/scripts/addons/bim/data/window/typical/IfcWindowLiningProperties.csv similarity index 100% rename from src/ifcblenderexport/blenderbim/data/window/typical/IfcWindowLiningProperties.csv rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/data/window/typical/IfcWindowLiningProperties.csv diff --git a/src/ifcblenderexport/blenderbim/export_ifc.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/export_ifc.py similarity index 100% rename from src/ifcblenderexport/blenderbim/export_ifc.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/export_ifc.py diff --git a/src/ifcblenderexport/blenderbim/helper.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/helper.py similarity index 100% rename from src/ifcblenderexport/blenderbim/helper.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/helper.py diff --git a/src/ifcblenderexport/blenderbim/ifc.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/ifc.py similarity index 100% rename from src/ifcblenderexport/blenderbim/ifc.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/ifc.py diff --git a/src/ifcblenderexport/blenderbim/import_ifc.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/import_ifc.py similarity index 100% rename from src/ifcblenderexport/blenderbim/import_ifc.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/import_ifc.py diff --git a/src/ifcblenderexport/blenderbim/operator.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/operator.py similarity index 100% rename from src/ifcblenderexport/blenderbim/operator.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/operator.py diff --git a/src/ifcblenderexport/blenderbim/prop.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/prop.py similarity index 100% rename from src/ifcblenderexport/blenderbim/prop.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/prop.py diff --git a/src/ifcblenderexport/blenderbim/schema.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema.py similarity index 100% rename from src/ifcblenderexport/blenderbim/schema.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema.py diff --git a/src/ifcblenderexport/blenderbim/schema/IfcBoundaryCondition_IFC4.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcBoundaryCondition_IFC4.json similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/IfcBoundaryCondition_IFC4.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcBoundaryCondition_IFC4.json diff --git a/src/ifcblenderexport/blenderbim/schema/IfcContext_IFC4.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcContext_IFC4.json similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/IfcContext_IFC4.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcContext_IFC4.json diff --git a/src/ifcblenderexport/blenderbim/schema/IfcElementType_IFC4.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcElementType_IFC4.json similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/IfcElementType_IFC4.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcElementType_IFC4.json diff --git a/src/ifcblenderexport/blenderbim/schema/IfcElement_IFC4.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcElement_IFC4.json similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/IfcElement_IFC4.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcElement_IFC4.json diff --git a/src/ifcblenderexport/blenderbim/schema/IfcMaterialDefinition_IFC4.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcMaterialDefinition_IFC4.json similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/IfcMaterialDefinition_IFC4.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcMaterialDefinition_IFC4.json diff --git a/src/ifcblenderexport/blenderbim/schema/IfcParameterizedProfileDef_IFC4.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcParameterizedProfileDef_IFC4.json similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/IfcParameterizedProfileDef_IFC4.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcParameterizedProfileDef_IFC4.json diff --git a/src/ifcblenderexport/blenderbim/schema/IfcSpatialElement_IFC4.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcSpatialElement_IFC4.json similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/IfcSpatialElement_IFC4.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcSpatialElement_IFC4.json diff --git a/src/ifcblenderexport/blenderbim/schema/IfcStructural_IFC4.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcStructural_IFC4.json similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/IfcStructural_IFC4.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/IfcStructural_IFC4.json diff --git a/src/ifcblenderexport/blenderbim/schema/Pset_Custom.ifc b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/Pset_Custom.ifc similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/Pset_Custom.ifc rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/Pset_Custom.ifc diff --git a/src/ifcblenderexport/blenderbim/schema/Pset_IFC4_ADD2.ifc b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/Pset_IFC4_ADD2.ifc similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/Pset_IFC4_ADD2.ifc rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/Pset_IFC4_ADD2.ifc diff --git a/src/ifcblenderexport/blenderbim/schema/ifc_types_IFC4.json b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/ifc_types_IFC4.json similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/ifc_types_IFC4.json rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/ifc_types_IFC4.json diff --git a/src/ifcblenderexport/blenderbim/schema/template.ifc b/src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/template.ifc similarity index 100% rename from src/ifcblenderexport/blenderbim/schema/template.ifc rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/schema/template.ifc diff --git a/src/ifcblenderexport/blenderbim/sheeter.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/sheeter.py similarity index 100% rename from src/ifcblenderexport/blenderbim/sheeter.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/sheeter.py diff --git a/src/ifcblenderexport/blenderbim/ui.py b/src/ifcblenderexport/blenderbim/scripts/addons/bim/ui.py similarity index 100% rename from src/ifcblenderexport/blenderbim/ui.py rename to src/ifcblenderexport/blenderbim/scripts/addons/bim/ui.py diff --git a/src/ifcpatch/ifcpatch.py b/src/ifcpatch/ifcpatch.py index 4268f2f534..8947cd222b 100644 --- a/src/ifcpatch/ifcpatch.py +++ b/src/ifcpatch/ifcpatch.py @@ -1,3 +1,6 @@ +#!/usr/bin/python +# This can be packaged with `pyinstaller --onefile --clean --icon=icon.ico ifcpatch.py` + import ifcopenshell import logging import argparse