Commit Graph

9565 Commits

Author SHA1 Message Date
Dion Moult 1dd401d77e Fix critical georeferencing autodetection regression due to refactor of new context filters. 2024-04-16 11:05:27 +02:00
Dion Moult b20f0dd199 Improve geometry guessing to also check placements of random sample of elements (not just site and building), not just geometry 2024-04-16 11:05:27 +02:00
Dion Moult be584d9155 New IfcPatch recipe to tessellate elements to account for bugs in other vendors. 2024-04-16 11:05:27 +02:00
Dion Moult 15f06dee29 Fix missing LGPL license blocks in IfcPatch 2024-04-16 11:05:27 +02:00
Andrej730 4fba7461c2 Fixed more overlooked context overrides... #3876 2024-04-16 11:05:26 +02:00
Andrej730 ffce41be95 Fixed #4026 related to #3876 2024-04-16 11:05:26 +02:00
Andrej730 581014a1d5 Move code using ui index from data to ui #4028
As UI indices changes doesn't trigger data.py updates and information on screen is not synced with the active item anymore.
2024-04-16 11:05:26 +02:00
Dion Moult 990611c160 Add support for loading nested elements and consider nesting for indirect spatial containment. 2024-04-16 11:05:26 +02:00
Dion Moult 6e97ef66a1 Don't unnecessarily merge materials which can be very computationally consuming on file loads (e.g. from software like Solidworks) which will be made redundant now that a new materials/style management system is WIP. 2024-04-16 11:05:26 +02:00
Dion Moult fd53adfa49 New ConvertNestToAggregate patch recipe 2024-04-16 11:05:26 +02:00
Bruno Postle 9483835356 IfcGit.load_project() can be used to refresh scene
If no file path is given, clear blender objects and regenerate
the scene from the current ifc project in IfcStore
2024-04-16 11:05:26 +02:00
Massimo Fabbro 44b625bf24 fix #4011. More precise IfcRoof qto calculator 2024-04-16 11:05:26 +02:00
Massimo Fabbro 63636e1cc7 Minor fix 2024-04-16 11:05:26 +02:00
Massimo Fabbro 4b3a49dc3b Covering Tool: fixed bug if the project is defined in units different from SI units 2024-04-16 11:05:26 +02:00
Andrej730 e17a6c326f minor fix to support union typing before python 3.10 #3774 2024-04-16 11:05:26 +02:00
Andrej730 8dc9376844 ClippingInfo util class to pass and apply plane clippings #3774
Co-Authored-By: Carlos Villagrasa <carvillasil@gmail.com>
2024-04-16 11:05:26 +02:00
Andrej730 1c002c6845 minor fixes
- error in settings poll message for bim.assign_selected_as_product
- test that drawing.assign_product won't create new assignments for the same product
2024-04-16 11:05:26 +02:00
Andrej730 d56ec42905 minor fix - clean up after debug 2024-04-16 11:05:26 +02:00
Andrej730 bf943951c1 Tests for connecting mep elements and regenerating them
Also:
- fixed bug with bim.mep_connect_elements not considering actual blender blender object's position
- moved syncing ifc position with blender object position to tools (sync_object_ifc_position)
- fixed a bug in adding a bend that occured if either any of the start/end points of the start/end segments matched - in that case one of the segments end up not connected to the bend
2024-04-16 11:05:26 +02:00
Andrej730 891e4d93a7 Fixed error importing .ifc that has element aggregated by ifcproject
In case if some element (not another aggregate) was aggregated by IfcProject directly, importing IFC was resulting in error below since the project's collection was never added to `self.collections`.

Traceback:
```
  File "\scripts\addons\blenderbim\bim\module\project\operator.py", line 732, in execute
    ifc_importer.execute()
  File "\scripts\addons\blenderbim\bim\import_ifc.py", line 292, in execute
    self.place_objects_in_collections()
  File "\scripts\addons\blenderbim\bim\import_ifc.py", line 1668, in place_objects_in_collections
    self.place_object_in_collection(self.file.by_id(ifc_definition_id), obj)
  File "\scripts\addons\blenderbim\bim\import_ifc.py", line 1672, in place_object_in_collection
    self.place_object_in_decomposition_collection(element, obj)
  File "\scripts\addons\blenderbim\bim\import_ifc.py", line 1689, in place_object_in_decomposition_collection
    return self.collections[aggregate.GlobalId].objects.link(obj)
KeyError: '2bKVb8E7L6e89EQYJUk8BM'
```
2024-04-16 11:05:26 +02:00
Andrej730 485f654f93 Assigning product from selected objects #4015 2024-04-16 11:05:26 +02:00
Dion Moult 2644d080d9 Revert "You can now override custom category element functions in IfcFM"
This reverts commit 8a63275db0.
2024-04-16 11:05:26 +02:00
Dion Moult 4fb01f2fe6 Minor alignment of Basic FM preset to IFC property naming 2024-04-16 11:05:26 +02:00
Dion Moult b3a2c7c4b7 You can now override custom category element functions in IfcFM 2024-04-16 11:05:26 +02:00
Dion Moult 257b3ce1d9 Minor bug fix to COBie 2.4 space descriptions 2024-04-16 11:05:26 +02:00
Dion Moult 9985ffb413 Purge data recipe now also purges shape aspect names and layers. 2024-04-16 11:05:26 +02:00
Andrej730 0cc337fa88 fixed issue adding bend between segments located at the same point
also added some tests
2024-04-16 11:05:26 +02:00
Andrej730 036a670910 Fixed issue with UI for types withotu PredefinedType after 1621449
Noticed the issue adding IfcFurnitureType in IFC2x3

```
Traceback (most recent call last):
  File "\Blender\4.0\scripts\addons\blenderbim\bim\module\model\workspace.py", line 71, in draw_settings
    BimToolUI.draw(context, layout, ifc_element_type="all")
  File "\Blender\4.0\scripts\addons\blenderbim\bim\module\model\workspace.py", line 230, in draw
    AuthoringData.load(ifc_element_type)
  File "\Blender\4.0\scripts\addons\blenderbim\bim\module\model\data.py", line 56, in load
    cls.data["predefined_type"] = cls.predefined_type()
  File "\Blender\4.0\scripts\addons\blenderbim\bim\module\model\data.py", line 258, in predefined_type
    predefined_type = relating_type.PredefinedType
  File "\Blender\4.0\scripts\addons\blenderbim\libs\site\packages\ifcopenshell\entity_instance.py", line 191, in __getattr__
    raise AttributeError(
AttributeError: entity instance of type 'IFC2X3.IfcFurnitureType' has no attribute 'PredefinedType'
```
2024-04-16 11:05:26 +02:00
Andrej730 e1246e257a New context override method for setting viewport tools #3876 2024-04-16 11:05:26 +02:00
Andrej730 4f76df8cb1 DumpSlabPlaner.change_thickness to use si units #4004
It was providing project units to `geometry.add_slab_representation` resulting and then they were converted to project units once again during `geometry.add_slab_representation`.
2024-04-16 11:05:26 +02:00
Andrej730 3d5b9f5e90 black format 2024-04-16 11:05:26 +02:00
Andrej730 db7dc86cd1 Merge two Services sections in Services and Systems tab #4001
Two similar sections were needed in the old ui before we added tabs
2024-04-16 11:05:26 +02:00
Ryan Schultz 65859a8f83 closes #4006: automatically update the geometry of all the objects that have 'similar openings'. 2024-04-16 11:05:26 +02:00
Ryan Schultz 8eef2392da fixes #3908: Close the opening (bim.edit_openings) while having the opening selected 2024-04-16 11:05:26 +02:00
VDobranov 8dfd122430 Update reference_structure.py
A mistype in docs: should be IfcRelReferencedInSpatialStructure instead of IfcRelContainedInSpatialStructure
2024-04-16 11:05:26 +02:00
Massimo Fabbro 6e6402e07f Covering Tool now it is possible to add ceiling coverings from selected walls 2024-04-16 11:05:26 +02:00
Andrej730 6140e67702 show mep regenerate and connecte elements for non-profile based elements 2024-04-16 11:05:26 +02:00
Andrej730 944f8695c7 root.remove_product to remove IfcRelFlowControlElements 2024-04-16 11:05:25 +02:00
Andrej730 6cf1f8f49f fixed issues with ports ui on undo
data.py doesn't update on every undo, so passed blender objects got invalidated on undo resulting in errors. changed blender objects to blender object names
2024-04-16 11:05:25 +02:00
Andrej730 fd69d91776 UI for assigning controls to flow elements #3981
Example - https://imgur.com/a/CZQIoHp
2024-04-16 11:05:25 +02:00
Andrej730 72b3f1e967 api for assigning/unassigning flow controls #3981 2024-04-16 11:05:25 +02:00
Andrej730 1bb5a14b65 Fixed typo in control.assign_control, added tests 2024-04-16 11:05:25 +02:00
Andrej730 61e5533598 tool.System.add_ports tests 2024-04-16 11:05:25 +02:00
Andrej730 4264b19fd8 fixed issue placing ports on a bend if start segment is bending using Z- 2024-04-16 11:05:25 +02:00
Andrej730 c2c2c4815f fixed issue in add_ports mutating object's matrix
inherently modifying ports positions in some cases
2024-04-16 11:05:25 +02:00
Dirk Olbrich b069770643 bbim docs: add user interface subsection, general workspace 2024-04-16 11:05:25 +02:00
Dirk Olbrich 9d9140252e bbimdocs: reorder images folder in users section 2024-04-16 11:05:25 +02:00
Dirk Olbrich ee6e273b1d bbim docs: reorder images folder in dev section 2024-04-16 11:05:25 +02:00
Dirk Olbrich 6e00dcd05e bbim docs: use absolute path for icon images 2024-04-16 11:05:25 +02:00
Dirk Olbrich fb55077a86 bbim doc: fix list indentation 2024-04-16 11:05:25 +02:00