Commit Graph

3875 Commits

Author SHA1 Message Date
Dion Moult 47d5e17159 Document how MacOS users using Blender from Steam should still use Mac Intel 2024-04-18 10:48:24 +02:00
Dion Moult 97eb34ca0d Fix #4490. Fix fundamental bug where get_pset would return none for inherited props with a boolean False value. 2024-04-18 10:48:24 +02:00
Dion Moult 0a4ff00bce Fix issue where the underlay cache option was not yet implemented and ignored. 2024-04-18 10:48:24 +02:00
Dion Moult 782573f986 Fix issue where reloading the drawing list would cause drawing names to be synced
It would run useless sync / API calls to edit psets on potentially hundreds of drawings.
2024-04-18 10:48:24 +02:00
Dion Moult f0fce05342 See #4481. Defer setting render visibility to drawing generation to speed up switching between drawings.
Doing obj.hide_render = True/False in a loop is slow and there is no bulk set command.
2024-04-18 10:48:24 +02:00
Andrej730 3db33a1071 nest.unassign_object - support batching #4474 2024-04-18 10:48:24 +02:00
Andrej730 d270a4fef8 nest.assign_object - support batching #4474 2024-04-18 10:48:24 +02:00
Andrej730 064fc0e405 typing 2024-04-18 10:48:24 +02:00
Andrej730 da838a2c7c deprecate spatial.remove_container in favor of spatial.assign_container
added temporary support for old version with warnings:

WARNING. `spatial.remove_container` api method is deprecated and should be replaced with spatial.unassign_container
WARNING. `product` argument is deprecated for API method "spatial.remove_container" and should be replaced with `products`.
2024-04-18 10:48:24 +02:00
Dion Moult d9d38e00bf See #4481. Faster implementation of object hiding and toggline viewport visibility. 2024-04-18 10:48:24 +02:00
Dion Moult 8d9a65caa4 Fix #4497. Drawing text annotations are now based on actual line breaks. 2024-04-18 10:48:24 +02:00
Dion Moult 4541a15a19 See #4497. Show invisible newlines and allow newline editing in attributes. 2024-04-18 10:48:23 +02:00
Dion Moult ba8257c9b0 Fix #4533. Add convenience link to launch type manager when no types exist. 2024-04-18 10:48:23 +02:00
Benoit DAMAY 446e9093a3 Inline help feature (#4409)
* Help operator in grouping and filtering Panel

Opens up a webbrowser on click

* Help button on the right of filtering panel header

* replacing os.rename() by shutil.move in ifcpatch

* removing debug print from previous commit

* Removing extra operator
Using bim.open_uri to open help page

* Update docs url

* Clean up whitespace

---------

Co-authored-by: Dion Moult <dion@thinkmoult.com>
2024-04-18 10:48:23 +02:00
ppaawweeuu d6eb8c131b Add CCI Classification schema
I'd like to add CCI classification to BBIM. It is very similar to CSS, developed by CCI-C and licensed under CC BY 4.0
More details here: https://cci-collaboration.org/the-standard/

This is my first commit, I used CCS(EN).ifc file as reference. Any feedback welcomed.
2024-04-18 10:48:23 +02:00
Gorgious 69d51283c7 New UI List in Sandbox panel to access, flip, remove, add, edit clipping planes
and some tweaks :
- Disable possibility to edit clipping plane quad geometry
- Add select and delete operators
- Remove polls from CreateClippingPlane that prevented from using it in the Properties editor. The clipping plane is added near the origin when using the Add button in the panel
2024-04-18 10:48:23 +02:00
Andrej730 163f5f2611 aggregate.unassign_object - support batching #4474 2024-04-18 10:48:23 +02:00
Andrej730 833f67cf45 aggregate.assign_object - support batching #4474 2024-04-18 10:48:23 +02:00
Andrej730 bc8b4e1a69 typing 2024-04-18 10:48:23 +02:00
Andrej730 9ef63e9b04 black format 2024-04-18 10:48:23 +02:00
Andrej730 d35f2dd0e9 layer.unassign_layer - support batching #4474 2024-04-18 10:48:23 +02:00
Andrej730 a003bc0018 layer.assign_layer - support batching #4474 2024-04-18 10:48:23 +02:00
Andrej730 e21eaac3a2 fix possible infinite recursion in bim.debug_active_drawing #4500
also fixed the issue with mixed up results at the end of the operator execution
2024-04-18 10:48:23 +02:00
Dion Moult b158d6a5f8 Materials with no style colours now default to Blender's default colour when linking models 2024-04-18 10:48:23 +02:00
Dion Moult 46adb2b4db Fix bug where drawing psets were needlessly updated and random objects would get drawing psets added on them
The prop update callbacks on has_underlay, has_linework, and has_annotation would edit the active object, which is not necessarily the camera. Yikes! Also, this means that when activating the drawing, it would sync references and every time it synced a reference it would attempt to sync these properties too which was slow and wasteful.
2024-04-18 10:48:23 +02:00
Dion Moult acba7c2410 Fix #4492. Refix bug where there was an extra equal sign when loading saved queries. 2024-04-18 10:48:23 +02:00
Andrej730 eebcc48238 group.unassign_group - support batching #4474 2024-04-18 10:48:23 +02:00
Andrej730 52995d1cdd spatial.assign_container - support batching #4474 2024-04-18 10:48:22 +02:00
Andrej730 443cd5187c typing 2024-04-18 10:48:22 +02:00
Andrej730 1d916f41e2 Collector.sync skip_unlinking option #4500
To speed up the drawing process in large projects and reduce time on syncing stage I've found that if object is already assigned to it's parent collection (both as part of blender collection and in IFC) we can skip assigning stage significantly reducing time on syncing in general (from 20-25 secs -> 9 secs).

The only thing we'll be missing in that case that object won't be unlinked from other unrelated blender collections which shouldn't break anything in the case of drawing generation.
2024-04-18 10:48:22 +02:00
Andrej730 bbdfe11cc0 documentation and small refactor 2024-04-18 10:48:22 +02:00
Andrej730 26e296c4b5 small optimizations
1) stop on first parent collection
2) ensure object's own collection's parent has BIMCollectionProperties.obj during the loop
3) collector._get_collections - returns project's own collection for consistency
4) couple tweaks skipping unnecessary iterations in loops
2024-04-18 10:48:22 +02:00
Dion Moult 35f425c69d Add missing build dep 2024-04-18 10:48:22 +02:00
Andrej730 6bc4e003b4 bim.debug_active_drawing debug operator #4500
Operator can help narrow down failing elements when drawing is failing with "RuntimeError: An unknown error occurred".

it's located in debug section - https://i.imgur.com/b03jmkZ.png

The output is noisy but the results are highlighted:
https://i.imgur.com/0ZA0u60.png
https://i.imgur.com/oXzqIXU.png
https://i.imgur.com/Y0nMRMz.png
2024-04-18 10:48:22 +02:00
Andrej730 d0e1a04fba bim.create_drawing to sync only once if printing multiple drawings
Turned out syncing process takes too much time on large projects, so we can speed up the printing process by syncing just once. Also exposed option not to sync to operator's properties to allow debugging failing elements.

A bit related to #4500
2024-04-18 10:48:22 +02:00
Andrej730 479c244de7 black format, cleanup, notes
bim.generate_global_id - forgot to remove it previously, this operator isn't intended for debug section
2024-04-18 10:48:22 +02:00
Andrej730 1f3d46640f typing 2024-04-18 10:48:22 +02:00
Massimo Fabbro 6ea9c9444a Qto_Calculator more consistent calculation about the PredefinedType 2024-04-18 10:48:22 +02:00
Massimo Fabbro 7519b66d4e improve the flooring height object quantity calculation 2024-04-18 10:48:22 +02:00
Massimo Fabbro 1132029e1b improve the ceiling height object quantity calculation 2024-04-18 10:48:22 +02:00
Massimo Fabbro 4ec902abf5 fix add ceiling from walls elevation bug 2024-04-18 10:48:22 +02:00
Andrej730 14efd59ff8 log external styles names when they fail to load 2024-04-18 10:48:22 +02:00
Andrej730 af3e2e0cf3 typing 2024-04-18 10:48:22 +02:00
Andrej730 19dcbf5ffb use default shading_styles.json in case if project's file is missing
to make it consistent with how we use in similar cases default styles, symbols, etc
2024-04-18 10:48:22 +02:00
Andrej730 4d1ea7eba5 move override panel methods to tool.Blender
to keep them close, so it will be easier to keep them in sync
2024-04-18 10:48:22 +02:00
Andrej730 100629e104 change .poll for overridden panels instead of creating new classes
Needed to avoid errors disabling addons that have overridden panels
2024-04-18 10:48:22 +02:00
Andrej730 c4d437cce4 move scene panels from different addons to "Blender Properties"
now we also automatically get list of default blender scene panels instead of hardcoding them
2024-04-18 10:48:21 +02:00
Andrej730 e8b2ccdd3c override blender ui panels when should_setup_workspace = False
Previously with should_setup_workspace = False it wouldn't override Blender UI scene panels and they would get mixed up with BBIM panels. After fix Blender panels are always moved to "Blender Properties" tab

before - https://i.imgur.com/bPvcAEe.png
now - https://i.imgur.com/lRUox29.png
2024-04-18 10:48:21 +02:00
Dion Moult fea78a8d52 Fix bug when linking in models with no chunks 2024-04-18 10:48:21 +02:00
Gorgious56 6f520ae457 The button to remove an inherited pset is no longer enabled on instances
Previously it would fail silently if clicked
2024-04-18 10:48:21 +02:00