Commit Graph

16951 Commits

Author SHA1 Message Date
Bruno Perdigão 325d6138d3 Add more options to Bonsai snap target. Follow 5649708ca4 bonsai-0.8.1-alpha2501211311 2025-01-21 10:10:57 -03:00
Gorgious56 fc58b1769c Improve logic for https://github.com/IfcOpenShell/IfcOpenShell/commit/bced62bd5c6615ec1ff8c3a6af3334e469e5f9fa bonsai-0.8.1-alpha2501211257 2025-01-21 13:56:32 +01:00
Dion Moult 82fbec68d1 Fix #5973. You can now select the item from the item panel. bonsai-0.8.1-alpha2501211253 2025-01-21 23:52:33 +11:00
Andrej730 bb1ec569bc Option to name existing used unnamed profiles
Example - https://imgur.com/a/IhMbs6K
bonsai-0.8.1-alpha2501211232
2025-01-21 17:31:21 +05:00
Andrej730 5a766e79bd Show error message trying to edit not supported type of profile
E.g. previously if you would tab into editing IfcExtrudedAreaSolid that was using not supported profile type (e.g. IFCCSHAPEPROFILEDEF) it would import it as empty geometry and tabbing out then would save it corrupting the original profile. Now there is an error message that it's not yet supported - https://i.imgur.com/NzksYVP.png
2025-01-21 17:31:21 +05:00
Andrej730 ff337bc849 Change currently edited item's profile
Example - https://imgur.com/a/2yiVIW5
2025-01-21 17:31:20 +05:00
Andrej730 992424c748 Update item decorator when moving item in viewport
Before this fix - https://imgur.com/a/mhpBvCG
2025-01-21 17:31:20 +05:00
Andrej730 0268f140ad typing 2025-01-21 17:31:20 +05:00
Andrej730 59c0719b03 black . 2025-01-21 17:31:20 +05:00
Andrej730 c91fbc4d40 Setup user data dir
Create some empty folders in the user data directory to hint the user.
2025-01-21 17:30:38 +05:00
Gorgious56 bced62bd5c When switching between ElementType and Element, keep the same class and predefined type if possible bonsai-0.8.1-alpha2501211229 2025-01-21 13:29:25 +01:00
Dion Moult b809bc89f0 See #5973. Representation items UI now works in item mode. 2025-01-21 23:28:33 +11:00
Dion Moult 2452b1be50 See #5973. Only show shape aspect attributes if creating a new shape aspect to make it clearer how to use the UI.
Previously the UI for creating new aspects and reusing an existing
aspect showed simultaneously which was confusing.
2025-01-21 23:21:07 +11:00
John Yani 7de8427a28 [Bonsai docs] Update version switching logic (#6005)
* Create brand.html

* Update custom.css for version switcher

* Update brand.html

* Update brand.html

Improve select box logic
bonsai-0.8.1-alpha2501210006
2025-01-21 11:06:24 +11:00
John Yani ee0adf2fff [Bonsai docs] Add version switcher to sidebar and update custom styles (#6004)
* Create brand.html

* Update custom.css for version switcher

* Update brand.html
bonsai-0.8.1-alpha2501202325
2025-01-21 10:24:53 +11:00
John Yani 2ce420ef6f Follow up #5994 (#6003)
* Create docs-deployment.yml

* Update docs-deployment.yml

Add CNAME

* Update docs-deployment.yml

* Create docs-deployment-unstable.yml

* Add requirements.txt

* Change trigger branch
2025-01-21 08:45:39 +11:00
Bruno Perdigão 290849d43a Fix snap to axis after 5649708ca bonsai-0.8.1-alpha2501201759 2025-01-20 14:59:04 -03:00
Andrej730 5e930972d6 User 'data' folder #5564
Bonsai now creates a user data folder that allows you overriding Bonsai data files. E.g. you can put you own `default.css` as `data/assets/default.css` in that folder and it will override the `default.css` Bonsai is using for the drawings. Previously you could have change internal `default.css` but Bonsai would always restore the original one on every update / reinstallation.

You can also store your .ifc files in data/libraries or data/templates and Bonsai will ensure they're loaded and you won't need to worry about Bonsai removing them later.

E.g. on Windows this path is `C:\Users\xxx\AppData\Roaming\bonsai\bonsai\data`/

You can also find path in the preferences - https://i.imgur.com/kwMc0JU.png
bonsai-0.8.1-alpha2501201432 bonsai-0.8.1-alpha2501201433 bonsai-0.8.1-alpha2501201434
2025-01-20 19:32:59 +05:00
Bruno Perdigão c08d25de42 Change Bonsai snap target UI to column. 2025-01-20 11:31:58 -03:00
Bruno Perdigão 5649708ca4 Add support and UI for Bonsai snap target.
The user can now select snap target for Bonsai polyline tool.
The options are shown in the bottom of Blender's Snapping panel.
bonsai-0.8.1-alpha2501201357 bonsai-0.8.1-alpha2501201356
2025-01-20 10:56:22 -03:00
Bruno Perdigão 9e81a3da17 Rename "Edge-Intersection" to "Edge Intersection" 2025-01-20 10:56:22 -03:00
Bruno Perdigão b509374c27 Add initial curve snapping functionality 2025-01-20 10:56:22 -03:00
Gorgious56 704bb27cf5 You can now user ALT + Click to ensure an object is unlinked from non-IFC collections when assigning a new container bonsai-0.8.1-alpha2501201326 2025-01-20 14:25:55 +01:00
Dion Moult 7b62b035c9 Fix #5964. Only get the unit assignment from the project to prevent ambiguity.
I really don't know why I didn't do this before.
bonsai-0.8.1-alpha2501201250
2025-01-20 23:50:03 +11:00
Dion Moult c5fe80db7b Make georeferencing decorator use soft limits. Don't scale font. 2025-01-20 23:48:51 +11:00
Andrej730 3ffc0bc39c append_asset to use custom file.add to prevent duplicating profiles and materials #5925 bonsai-0.8.1-alpha2501201125 2025-01-20 16:23:31 +05:00
Andrej730 0a266bba5d Fix #6000 2025-01-20 16:16:39 +05:00
Andrej730 ecf0d255f7 Roll back build from a65aa92 #6001 2025-01-20 16:16:39 +05:00
Andrej730 c0499a2c88 black . 2025-01-20 16:16:38 +05:00
John Yani 3ad247b9a7 Automatic build and deploy bonsai docs on push (#5994)
* Create docs-deployment.yml

* Update docs-deployment.yml

Add CNAME

* Update docs-deployment.yml

* Create docs-deployment-unstable.yml

* Add requirements.txt
bonsai-0.8.1-alpha2501201013
2025-01-20 21:13:21 +11:00
Bruno Postle 13b93a9ea8 Move cache_dir from site-packages to local folder (#5856)
Previously cache_dir was located under site-packages, which is managed
by blender and could be read-only. Now location defaults to eg.
~/.cache/bonsai or equivalent location on other platforms. See #5564

Note this adds a dependency on the platformdirs python module
bonsai-0.8.1-alpha2501200815
2025-01-20 13:14:51 +05:00
Dion Moult ebdfe2bccd Fix #5319. Workaround for upstream bpypolyskel bug where dormer ridges were not flat. bonsai-0.8.1-alpha2501200618 2025-01-20 17:17:37 +11:00
Dion Moult 942c3fec87 Add missing bin directory bonsai-0.8.1-alpha2501200336 2025-01-20 14:35:50 +11:00
Dion Moult 651c24bbfe See #5799. Fix segfault in upstream Blender when unlinking material objects in specific scenario.
I can't explain this one so I'm pretty embarrassed to commit this, but
it crashes (see situation in #5799) on my machine and I can't recreate
it outside this scenario. In any case I think as a general strategy we
should:

 1. Minimise reliance on msgbus
 2. Msgbus listeners themselves should be wary of invalid state (e.g. if
object is now unlinked)
 3. Not clear listeners (don't overreach)
bonsai-0.8.1-alpha2501200301
2025-01-20 14:01:11 +11:00
Dion Moult b2213592ea Fix #5799. Also purge presentation style assignment when purging unused styles. 2025-01-20 13:59:00 +11:00
Dion Moult c311b65af5 See #5799. Allow merging unnamed styles.
Styles are special because their names aren't critically semantic. It's
more to do with the style definition.
2025-01-20 13:58:39 +11:00
Dion Moult e8b097e2cb See #5799. Remove slow / unnecessary material criticals that also have a risk of crashing
In general Blender on my machine at least sometimes has huge lag with
material previews.
2025-01-20 13:57:07 +11:00
Dion Moult 193ff1cd0c Mention builds website in docs. bonsai-0.8.1-alpha2501200116 2025-01-20 12:15:49 +11:00
Dion Moult a65aa92c87 See #5999. Revert to older bot build before speed regression. 2025-01-20 12:15:36 +11:00
Dion Moult 6af19bc98d Fix 3x slower major speed regression introduced in 98a9550260
The commit that introduced the problem was trying to optimise rendering
dense meshes with the opening decorator. However, it introduced more
calculation in the initial project load and stored more data on every
object. This resulted in models loading 3x slower for me which is pretty
major. The original problem needs further investigation.
bonsai-0.8.1-alpha2501200025 bonsai-0.8.1-alpha2501200024
2025-01-20 11:24:19 +11:00
Dion Moult 5769c0d442 Fix #5754. Cosmetic bug where UI was not refreshed when using advanced mode causing incomplete decorators to be drawn. bonsai-0.8.1-alpha2501191326 2025-01-20 00:25:29 +11:00
Dion Moult 5c058dff3e Fix #5766. Bump IOS. bonsai-0.8.1-alpha2501191050 2025-01-19 21:49:51 +11:00
Dion Moult f86e414055 Forgot to add a placement for new elements which is invalid. bonsai-0.8.1-alpha2501191039 2025-01-19 21:38:52 +11:00
Dion Moult c17febac0c Fix #5996. Bug where getting selected or active objects was not clear.
Sometimes we want to fetch selected objects, and that includes the
active object, even if the active object isn't actually highlighted in
the viewport (albiet rare, I think?).

Conversely sometimes we want to get the active object, even if it isn't
actually highlighted. The tool.Blender functions now have kwargs to
distinguish between these.
bonsai-0.8.1-alpha2501190618
2025-01-19 17:17:56 +11:00
Dion Moult 2d811a6786 Fix fetching layers in item mode. Apparently the inverse name changes slightly.
Maybe because an item has a single layer whereas the shape is meant to
have many layers?
bonsai-0.8.1-alpha2501190610
2025-01-19 17:09:32 +11:00
Dion Moult 6eed5607c4 Fix #5972. Purge old non-item-based boolean code 2025-01-19 17:09:02 +11:00
Dion Moult 0b46a31c25 Add item menu is now tailored for CSG representations.
I find this a bit of a strange behaviour in IFC. Imagine you start with
a Tessellation representation type. You're only allowed meshy things, no
solid extrusion. And vice versa if you have a SweptSolid representation
type.

Now imagine you suddenly create a boolean. Now, you can mix both
tessellations and solids together.
bonsai-0.8.1-alpha2501190558
2025-01-19 16:58:10 +11:00
Dion Moult 4d7f078f8b Ensure item decorator is updated when editing things in item mode. 2025-01-19 16:56:31 +11:00
Dion Moult 046f7cbfd2 See #5972. You can now select booleans recursively. bonsai-0.8.1-alpha2501190255 2025-01-19 13:54:40 +11:00
Bruno Postle 4152641d1f Ensure files in libs/bin are executable
When blender extracts wheels it doesn't preserve executable permissions
bonsai-0.8.1-alpha2501182119
2025-01-18 21:17:43 +00:00