Commit Graph

18504 Commits

Author SHA1 Message Date
Dion Moult 08dfcea47c Fix Python signatures in operator descriptions.
Closes #7797. Closes #7230.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 21:38:20 +11:00
Dion Moult 9c8f25739c Fix failing test. Add reference images should use generated coords, not UV.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 19:27:42 +11:00
Sebastian Schilling 256e4d2191 buildingSMART Data Dictionary module: use pSets from different data dictionary sources (#7764)
* buildingSMART Data Dictionary module: added textfield to change data dictionary url

* moved change of bsdd baseurl change to addon settings

* Receiving Psets from other dictionary sources has been made available by dynamizing the  identifier_url using the client baseurl

* Remove unnecessary blank lines in prop.py

* Remove unused import of bsdd module
2026-03-15 12:56:04 +11:00
Dion Moult b14da14614 Default to assigning material set usages if assigning to an occurrence. See #7794.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 12:26:21 +11:00
Dion Moult 273ecfe8e4 Supersede 3x3 box alignment with more familiar horizontal / vertical UI
* Fix #7712 - global alignment controls now affects all literals
 * Fix #7760 - goodbye 3x3 box alignment

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 08:24:38 +11:00
Dion Moult 6e0f24105e Minor fix to regression in 95480a2 where reshaping to a 3x3 matrix was removed 2026-03-15 07:28:38 +11:00
Dion Moult 82adf4d18c Fix #7782: Don't allow assigning styles if no styles available.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 07:03:48 +11:00
Thomas Krijnen 1a6fd2530f Remove dependency on Standard_failure #7788 2026-03-14 14:44:47 +01:00
Dion Moult ea64f1b6b9 Fix #7770, #7747, #7572, #7522, #7416, #7086: Bug when first point in poly tool clicked twice
Previous logic always skipped the first point. Instead, it should only
skip when actually closing a loop (i.e. >= 3 points).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 20:35:59 +11:00
Dion Moult 473d689cf2 Fix #7794: Only slice layerset mesh when material layer set usage exists
Without a usage, orientation is undefined so slicing should be skipped.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 13:25:14 +11:00
Richard Brice cf1552e79e Simplifies IfxAxis2PlacementLinear, assumes default Axis = (0,0,1) 2026-03-13 11:16:10 -07:00
Andrej730 90db564b4b ifcclash - add advanced package type that supports smart group clashes 2026-03-13 20:26:23 +05:00
Andrej730 e9fb6b3c1d Bonsai Makefile - upstream bpypolyskel wheel recipe
Sent PR - https://github.com/prochitecture/bpypolyskel/pull/22
2026-03-13 20:26:23 +05:00
Andrej730 a5e0b3f0e5 Bonsai Makefile - upstream ifcjson wheel recipe
Sent PR - https://github.com/IFCJSON-Team/IFC2JSON_python/pull/8
2026-03-13 20:26:23 +05:00
Andrej730 60519e8fed ifcopenshell dev_environment - include all packages 2026-03-13 20:26:23 +05:00
Andrej730 8fb454bb27 Partially disable old Windows workaround for Bonsai uninstallation 2026-03-13 20:26:23 +05:00
Andrej730 9ed8f3e244 Bonsai - fix missing Bonsai Fatal Error UI
Since we added more data to debug info in fcf5614 Fatal Error itself started to fail and was never displayed due some props being inaccessible during load, should be fixed now.

Possible error that were fixed:
```
  File "\Blender\5.1\extensions\raw_githubusercontent_com\bonsai\__init__.py", line 328, in <module>
    print(format_debug_info(get_debug_info()))
                            ~~~~~~~~~~~~~~^^
  File "\Blender\5.1\extensions\raw_githubusercontent_com\bonsai\__init__.py", line 117, in get_debug_info
    if bpy.data.is_saved:
       ^^^^^^^^^^^^^^^^^
AttributeError: '_RestrictData' object has no attribute 'is_saved'

Traceback (most recent call last):
  File "\Blender\5.1\extensions\raw_githubusercontent_com\bonsai\__init__.py", line 366, in draw
    info = get_debug_info()
  File "\Blender\5.1\extensions\raw_githubusercontent_com\bonsai\__init__.py", line 152, in get_debug_info
    bim_props = tool.Blender.get_bim_props()
                ^^^^
NameError: name 'tool' is not defined. Did you mean: 'bool'?

Traceback (most recent call last):
  File "\Blender\5.1\extensions\raw_githubusercontent_com\bonsai\__init__.py", line 366, in draw
    info = get_debug_info()
  File "\Blender\5.1\extensions\raw_githubusercontent_com\bonsai\__init__.py", line 141, in get_debug_info
    import bonsai.tool as tool
  File "\Blender\5.1\extensions\.local\lib\python3.13\site-packages\bonsai\__init__.py", line 355, in <module>
    print(format_debug_info(get_debug_info()))
                            ~~~~~~~~~~~~~~^^
  File "\Blender\5.1\extensions\.local\lib\python3.13\site-packages\bonsai\__init__.py", line 141, in get_debug_info
    import bonsai.tool as tool
  File "\Blender\5.1\extensions\.local\lib\python3.13\site-packages\bonsai\tool\__init__.py", line 23, in <module>
    from bonsai.tool.attribute import Attribute
  File "\Blender\5.1\extensions\.local\lib\python3.13\site-packages\bonsai\tool\attribute.py", line 31, in <module>
    import bonsai.bim.helper as helper
  File "\Blender\5.1\extensions\.local\lib\python3.13\site-packages\bonsai\bim\__init__.py", line 28, in <module>
    from . import handler, operator, prop, ui
  File "\Blender\5.1\extensions\.local\lib\python3.13\site-packages\bonsai\bim\handler.py", line 36, in <module>
    from bonsai.bim.module.aggregate.decorator import AggregateDecorator
  File "\Blender\5.1\extensions\.local\lib\python3.13\site-packages\bonsai\bim\module\aggregate\__init__.py", line 21, in <module>
    from . import operator, prop, ui
  File "\Blender\5.1\extensions\.local\lib\python3.13\site-packages\bonsai\bim\module\aggregate\operator.py", line 32, in <module>
    class BIM_OT_aggregate_assign_object(bpy.types.Operator, tool.Ifc.Operator):
                                                             ^^^^^^^^
AttributeError: partially initialized module 'bonsai.tool' from '\Blender\5.1\extensions\.local\lib\python3.13\site-packages\bonsai\tool\__init__.py' has no attribute 'Ifc' (most likely due to a circular import)
```
2026-03-13 20:26:23 +05:00
Andrej730 298beacef6 Bonsai - remove pyperclip use 2026-03-13 20:26:22 +05:00
Andrej730 eba798c544 typing 2026-03-13 20:26:22 +05:00
dependabot[bot] 1576302caf Bump devalue from 5.6.3 to 5.6.4 in /src/ifctester/webapp
Bumps [devalue](https://github.com/sveltejs/devalue) from 5.6.3 to 5.6.4.
- [Release notes](https://github.com/sveltejs/devalue/releases)
- [Changelog](https://github.com/sveltejs/devalue/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sveltejs/devalue/compare/v5.6.3...v5.6.4)

---
updated-dependencies:
- dependency-name: devalue
  dependency-version: 5.6.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-13 07:58:26 +01:00
dependabot[bot] d7f29c4494 Bump tar from 7.5.10 to 7.5.11 in /src/ifctester/webapp
Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.10 to 7.5.11.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v7.5.10...v7.5.11)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.11
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-13 07:58:22 +01:00
Andrej730 0b44e146bd Fix error starting Bonsai (77697aeef) 2026-03-13 11:57:17 +05:00
Andrej730 8bd3fab608 Linked Models - option to isolate selected object
Quick demo - https://files.catbox.moe/6chdx7.mp4
2026-03-12 20:21:10 +05:00
Andrej730 77697aeefc typing 2026-03-12 20:21:10 +05:00
Thomas Krijnen 71442bd4d4 Submodule 2026-03-12 12:34:05 +01:00
Andrej730 f7bee258c6 Linked models - add description for georeferencing indicator
Example - https://files.catbox.moe/bkn9pn.png
2026-03-11 18:38:25 +05:00
Andrej730 0585f8716a Quick Favorites Manager - support enum items 2026-03-11 18:38:25 +05:00
Andrej730 61ba6a7989 Add operator to run search generic search queries
So it will be easy to add queries to quick favorites.
2026-03-11 18:38:25 +05:00
Andrej730 97f900e62f Quick Favorites Manager - show operators suggestions 2026-03-11 18:38:25 +05:00
Andrej730 594d72d7e1 Quick Favorites Manager
Blender doesn't have it's own quick favorites manager and working with them can be not very flexible - you can add them in context menu and remove them from Quick Favorites menu. But you can't reorder them, you can't rename them and you can't even add a new button to favorites if it's not added by some addon in the UI.

Have been stumbling upon this for awhile and decided to create an experimental manager UI for this. Things it can do:
- help user create a button with any operator in Blender and properties they prefer to then save it Quick Favorites. Which seems can be very useful in Bonsai, since you can create separate buttons for all kinds of selectors expressions, class assignment or other operators.

- it can import quick favorites from user's actual current quick favorites, so they can just modify them a bit, reorder, rename and then add them again.

- Since quick favorites are not exposed to Python API in Blender, we're using a very hacky way to retrieve them from Blender and don't provide our own buttons for adding and removing quick favorites, as it may be dangerous and even more hacky in implementation. So the workflow for user is to either generate some buttons and add them to quick favorites using Manager or to import it's own quick favorites, then change them how they like, then remove quick favorites using usual quick favorites menu and then add new button one by one.

Small demo - https://files.catbox.moe/vyffp6.mp4
2026-03-11 18:38:24 +05:00
Andrej730 578caaf2cd tool.Blender.update_all_viewports 2026-03-11 18:38:24 +05:00
Andrej730 15ea092ac4 typing 2026-03-11 18:38:23 +05:00
Andrej730 4b12b6dacd bim.hide_queried_linked_element - note known UNDO limitation 2026-03-11 18:38:23 +05:00
Andrej730 584bbe3b83 tool/test_project - remove redundant __init__ 2026-03-11 18:38:22 +05:00
HugoBallee 972a1fd309 Update getting_started.rst
IFC_SCHEMA_NAME matching includes
2026-03-10 09:41:09 +01:00
dependabot[bot] 72f279381f Bump immutable from 5.1.2 to 5.1.5 in /src/ifctester/webapp
Bumps [immutable](https://github.com/immutable-js/immutable-js) from 5.1.2 to 5.1.5.
- [Release notes](https://github.com/immutable-js/immutable-js/releases)
- [Changelog](https://github.com/immutable-js/immutable-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/immutable-js/immutable-js/compare/v5.1.2...v5.1.5)

---
updated-dependencies:
- dependency-name: immutable
  dependency-version: 5.1.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 14:33:44 +01:00
dependabot[bot] 9873e403bc Bump tar from 7.5.9 to 7.5.10 in /src/ifctester/webapp
Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.9 to 7.5.10.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v7.5.9...v7.5.10)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.10
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 14:33:38 +01:00
Richard Brice 610d639c21 Fixes rotation lerp test in make_loft 2026-03-08 10:37:05 -07:00
Richard Brice e282a18474 Fixes crash in taxonomy::loft::print_impl when axis == nullptr 2026-03-08 09:55:47 -07:00
Thomas Krijnen 0469a9528b use basic casts to prevent needless item upgrades #7738 2026-03-06 16:34:12 +01:00
Andrej730 f9486be172 get_linked_element_geom_slice - add tests 2026-03-06 19:07:34 +05:00
Andrej730 3a59425a64 Linked IFC models - hotkey to hide selected geometry
Demo - https://files.catbox.moe/aok74w.mp4
2026-03-06 19:07:34 +05:00
Andrej730 9d0c172a53 bim.select_linked_model_element
Refactored methods for accessing objects in linked models and added a simple operator to select object in linked model by providing guid.

A quick demo - https://files.catbox.moe/sjjw37.mp4
2026-03-06 19:07:34 +05:00
Andrej730 ecc82a52f5 ExtractPropertiesToSQLite - add typing for created columns 2026-03-06 19:07:34 +05:00
Andrej730 adaf33b74f project.operator - reuse ray_cast method 2026-03-06 19:07:33 +05:00
Andrej730 a52a329197 Update note on Blender upstream issue
Fix was included in 4.5.7 (see 141496 bug in https://projects.blender.org/blender/blender/issues/141871)
2026-03-06 19:07:33 +05:00
Andrej730 3a54e808f6 dev_environment python - create user site packages folder if missing
E.g. it might be missing if Python was just installed. Also print paths first before symlinking, making it easier to debug.
2026-03-06 19:07:33 +05:00
Andrej730 f102c7c1b4 ifcopenshell-python makefile - add note about PYNUMBER 2026-03-06 19:07:33 +05:00
Andrej730 9005333f53 ifcpatch MergeProjects - make logger arg optional 2026-03-06 19:07:33 +05:00
Andrej730 a26dbe252a bim.append_inspected_linked_element - fix missing UNDO 2026-03-06 19:07:33 +05:00