Commit Graph

8153 Commits

Author SHA1 Message Date
Dion Moult 1aae597da5 See #3169. Fix bug where non walls and slabs didn't get semantic classes in drawings. 2024-04-15 09:58:26 +02:00
Andrej730 74d5d20d07 Revision Clouds - new annotation type
Short demonstration - https://github.com/IfcOpenShell/IfcOpenShell/assets/9417531/90c9b458-0bae-40a2-9eee-d748e57c24a3

Curently it doesn't have any special representation in viewport and it doesn't have any customisable parameters.

You might get come across error "Revision cloud edges must form just 1 polygon" - it means your edges either don't form any polygon or form 2 or more, both cases are not supported.
2024-04-15 09:58:26 +02:00
Dion Moult 1b261304eb Fix #3202. 2024-04-15 09:58:26 +02:00
Dion Moult 8bd77b3663 New get_shape_matrix utility. 2024-04-15 09:58:26 +02:00
Dion Moult 43bfd51ccb Fix #3181. 2024-04-15 09:58:26 +02:00
Bruno Postle e4ff87cb01 BBIM Ensure LF end-of-line in Git repo (#3096)
Git auto text detection seems to fail with IFC files, possibly due to
long lines. So we now force detection as text which ensures conversion
from CRLF to LF when adding to the repository. We also convert the local
IFC file to LF otherwise Git thinks that the local file is out-of-sync
with the repo version ¯\_(ツ)_/¯
2024-04-15 09:58:26 +02:00
Andrej730 b171dc6146 Small documentation note 2024-04-15 09:58:26 +02:00
Andrej730 218b67bc5c Procedurally generating list of props for shading styles to cover more props
If it will be too much we still have option to exclude some of them
2024-04-15 09:58:26 +02:00
Gorgious56 bf9df2897c Remove the cryptic (and slightly annoying) console warning logs when trying to display the type manager when there is no element type in the file 2024-04-15 09:58:26 +02:00
Gorgious56 66161518df Fix annoying tooltip when using the eyedropper to copy a type 2024-04-15 09:58:26 +02:00
Andrej730 0d3c0b7a03 Fixed problem with ifccsv set_element_key #3192
Currently "type" attribute in selector returns something like "#71=IfcWallType('20jY5HfLH4LBwMrDEoTdML',$,'WAL100',$,$,$,$,$,$,.NOTDEFINED.)" when the code was expecting the class name like "IfcSlab" or "IfcWall". Changed it to "class" atribute that returns just class name.
2024-04-15 09:58:25 +02:00
Andrej730 52302841d9 Window Modifier - support typing units in props
Example - https://i.imgur.com/C99RRs9.png
2024-04-15 09:58:25 +02:00
Andrej730 50e393675a More descriptive exception for reassign_class #3192
Added it because there was no error handling here anyway and later there was another UnboundLocalError:

    for attribute in declaration.all_attributes():
UnboundLocalError: local variable 'declaration' referenced before assignment
2024-04-15 09:58:25 +02:00
Andrej730 865d755730 Stair Modifier - support typing units in props
Example - https://i.imgur.com/XQsVge1.png
2024-04-15 09:58:25 +02:00
Andrej730 880dcb7fcf Array Modifier - support typing units in props
Example - https://i.imgur.com/a0r0vUs.png
Also accidentally fixed input_cursor_array not working properly for projects with non-meters units.
2024-04-15 09:58:25 +02:00
Andrej730 dc698f7116 Small error message on aggregating objects 2024-04-15 09:58:25 +02:00
Dion Moult 983f78c3a5 Fix #3193. Revert "partially addresses #3103."
This reverts commit 1b2ab4e3f0.
2024-04-15 09:58:25 +02:00
Dion Moult 122e17d5b5 Fix #3086. 2024-04-15 09:58:25 +02:00
Gorgious e6a90d6786 Using the eyedropper on a type automatically sets the type and validates assign_type. However it does display an annoying message saying the value was not set, I don't know how to get rid of it. 2024-04-15 09:58:25 +02:00
Gorgious bb2ee957e9 You can now eyedrop an object in the 3D viewport to fill in its class in the type selector 2024-04-15 09:58:25 +02:00
Gorgious c7381c8092 Fix Relating type enum not correctly initializing 2024-04-15 09:58:25 +02:00
Gorgious db283eb137 The type manager now switches to the type when clicking on the "select type" button. Duplicating a type also changes the active type in the type manager 2024-04-15 09:58:25 +02:00
Gorgious 62f2144245 Selecting types and instances now show a helpful tooltip when the object is not selectable (due to being hidden or in a hidden collection) 2024-04-15 09:58:25 +02:00
Gorgious 9d9d1660ff You can now duplicate a type from the properties panel
+ change the "paste" icon for the  "duplicate" icon
2024-04-15 09:58:25 +02:00
Gorgious 4843068458 "Select instances" button is now grayed out when the type doesn't have any instance 2024-04-15 09:58:25 +02:00
Bruno Postle 3884260bcf BlenderBIM set gitattributes and autocrlf
Force Git to always treat IFC files as text.
Store IFC in Git with LF line-endings, but checked-out files are
CRLF on Windows.
2024-04-15 09:58:25 +02:00
Andrej730 27655dcf35 Roof modifier - more descriptive errors on invalid footprints #3171 2024-04-15 09:58:25 +02:00
Andrej730 b66fac5041 Default material layer thickness for adding new layers
Same as when you create IfcMaterialLayerSet
2024-04-15 09:58:25 +02:00
Andrej730 9b221452d5 UI problem with creating empty material layer set causing issues #3169
Now it's also possible to select some material that will be used for they first layer of material layer set.
2024-04-15 09:58:25 +02:00
Ryan Schultz e94350db93 bulk assignment of objects to an aggregate. 2024-04-15 09:58:25 +02:00
Andrej730 e7510231d5 Added a descriptive error on attempt of deleting last material layer 2024-04-15 09:58:25 +02:00
Andrej730 63b394109b Fixed error loading .ifc and activating view for drawing with underlay 2024-04-15 09:58:25 +02:00
Ryan Schultz 1fafc42d36 partially addresses #3103. 2024-04-15 09:58:25 +02:00
Sigma Dimensions 6e41a25953 fix contracting/expanding schedule of rates 2024-04-15 09:58:25 +02:00
Sigma Dimensions 5e5d4f57f4 Fix selecting unassigned work/cost schedule products 2024-04-15 09:58:25 +02:00
Sigma Dimensions 9e0f1db6dc small fix for work schedule derived start/end dates 2024-04-15 09:58:25 +02:00
Sigma Dimensions 4950f249b6 BBIMD: enable deleting sequence relationships from list of predecessors/successors 2024-04-15 09:58:25 +02:00
Sigma Dimensions f81b8eae87 remove annoying print statement 2024-04-15 09:58:25 +02:00
Sigma Dimensions 53aa7a8abb ios api task fix: remove orphan IfcRelNests when deleting tasks 2024-04-15 09:58:25 +02:00
Sigma Dimensions 24af5b8904 BBIM D: Copy cost items, export Cost Schedules individually, start improving Cost Schedule UI 2024-04-15 09:58:25 +02:00
Sigma Dimensions b1e5e1914e Easier grouping of materials by allowing material attributes editing from the IfcMaterial subpanel in the scene properties tab 2024-04-15 09:58:25 +02:00
Bruno Postle 2c69e3c44c Allow missing/broken GitPython
`import git` can fail badly with a broken xcode installation, so
we let blenderbim run anyway
2024-04-15 09:58:25 +02:00
Bruno Postle a8d20717cb Fix merging of remote branches (#3096)
You can now 'clone' a remote repository and 'push' to it. There is no 'pull'
functionality because this can fail badly, so there is a 'fetch' which
retrieves all remote branches without merging (and never fails). The
user can then select the remote branch in the branch pull-down and merge
it.
2024-04-15 09:58:25 +02:00
Andrej730 f7b2a68ed3 Detect BBIM railings at import to import as meshes not curves #3144
Sometimes railing could consist just of one IFCSWEPTDISKSOLID then it will be considered native swept disk solid and imported as a curve.

But when user create BBIM railing they edit it as a mesh and curve might look a bit different. Therefore we detect it now at import to make sure it's going to be reprsented the same way as it was saved.
2024-04-15 09:58:25 +02:00
Andrej730 3601a1d43b Reset active drawing id if we removed the active drawing
Previously there was an error if you remove all drawings:
```
Traceback (most recent call last):
  File "\addons\blenderbim\bim\module\drawing\ui.py", line 182, in draw
    DrawingsData.load()
  File "\addons\blenderbim\bim\module\drawing\data.py", line 106, in load
    "active_drawing_pset_data": cls.active_drawing_pset_data(),
  File "\addons\blenderbim\bim\module\drawing\data.py", line 134, in active_drawing_pset_data
    drawing = ifc_file.by_id(bpy.context.scene.DocProperties.active_drawing_id)
  File "\addons\blenderbim\libs\site\packages\ifcopenshell\file.py", line 326, in by_id
    return self[id]
  File "\addons\blenderbim\libs\site\packages\ifcopenshell\file.py", line 314, in __getitem__
    return entity_instance(self.wrapped_data.by_id(key), self)
  File "\addons\blenderbim\libs\site\packages\ifcopenshell\ifcopenshell_wrapper.py", line 4517, in by_id
    return _ifcopenshell_wrapper.file_by_id(self, id)
RuntimeError: Instance #1 077 not found
```
2024-04-15 09:58:25 +02:00
Andrej730 af2e0b07c3 fixed neg values in format_distance & section/plan level #3175 2024-04-15 09:58:25 +02:00
Andrej730 9403b8cbf0 Added default Model/Annotation/PLAN_VIEW to support e68fdb2db 2024-04-15 09:58:25 +02:00
Andrej730 afda99d2f4 Test that drawing styles are loaded 2024-04-15 09:58:25 +02:00
Andrej730 4f8851f007 Fixed error on rebuilding sheet with underlays
Also added description and more clear name for `bim.open_sheet`

Error was:
```
Error: Python: Traceback (most recent call last):
  File "\addons\blenderbim\bim\module\drawing\operator.py", line 82, in execute
    IfcStore.execute_ifc_operator(self, context)
  File "\addons\blenderbim\bim\ifc.py", line 410, in execute_ifc_operator
    result = getattr(operator, "_execute")(context)
  File "\addons\blenderbim\bim\module\drawing\operator.py", line 1177, in _execute
    del raster_references[reference.Location]
TypeError: list indices must be integers or slices, not str
```
2024-04-15 09:58:25 +02:00
Andrej730 c37b71a3d3 Update drawing styles on changing Underlay checkbox #3172 2024-04-15 09:58:25 +02:00