Andrej730
210257de8e
black .
2025-03-17 11:57:26 +05:00
Bruno Perdigão
67b0ab6685
Fix #6366 . Improve extrusion x_angle and direction handling.
...
This solution brings new questions to #5938 .
Currently, we lack a reliable way to calculate the existing x_angle only based solely on the extrusion direction. For example, a 30 degree angled extrusion with positive direction has the same extrusion direction as a -150 degree angled extrusion with negative direction. The difference lies in the object's rotation.
This means that things can get messy if the user changes the object x angle somehow. We may need to explore alternative approaches.
2025-03-15 21:00:57 -03:00
Dion Moult
acdc40fb41
See #1227 . Reimplement extending walls to another wall
2025-03-12 23:05:34 +11:00
Dion Moult
226736eb41
Fix #3357 . Remove Shift-E for parametric objects (superseded by tab) and you can now extend to anything not just slabs.
...
This Shift-E still needs more polish as we figure out the best hotkeys
and what's most natural to users when they select different combinations
of objects, so expect the conditionals that govern when Shift-E does
things to still change in the future.
2025-03-12 18:41:18 +11:00
Bruno Perdigão
41c1c6e8fa
Fix #6291 .
...
When changing slab `x_angle` the rotation matrix now takes into account object's world matrix.
2025-03-11 16:11:47 -03:00
Dion Moult
e78127d54f
See #1227 . Don't move any child at all when regenerating wall body.
2025-03-09 18:00:13 +11:00
Dion Moult
5fa4f2e79b
See #1227 . Reimplement merge walls with new wall body generation code.
2025-03-09 17:32:19 +11:00
Dion Moult
e5027e0be8
See #1227 . Implement updating of object position.
2025-03-09 08:52:05 +11:00
Dion Moult
af2dd1d7c6
See #1227 . Start to integrate into Bonsai. Basic testing of join/unjoin/extend/split/flip done.
2025-03-09 08:25:32 +11:00
Dion Moult
47d11daa15
See #1227 . Small clean up of old sketch-wall based code which we no longer support.
2025-03-08 11:26:27 +11:00
Bruno Perdigão
48acfad8bb
Fix #6213 . Adjust wall clipping from slabs to account for slab offset and direction sense.
2025-03-07 15:49:32 -03:00
Bruno Perdigão
01b63d87d0
Fix issue with updating slab offset with negative direction sense.
2025-03-07 15:42:09 -03:00
Andrej730
e1e51cbf26
black .
2025-03-05 18:53:56 +05:00
Bruno Perdigão
43931e951e
Fix another issue (follows 2609a8293c) with walls created with obtuse x_angle.
2025-02-28 13:19:51 -03:00
Bruno Perdigão
0eb32ed7b7
Refactor ChangeExtrusionXAngle to support obtuse x_angle for slabs.
...
To support obtuse x_angle a refactoring had to be made, which helped
improve the general code for slab addition. This is challenging because
there are a few features that interact with each other to create slabs,
like `depth`, `direction_sense`, `offset` and `x_angle`. In addition,
these interactions can happen in different parts of the code. This
commit addresses `ChangeExtrusionXAngle` in `model/wall.py`.
See e8e88c25fdcef55826443fe6b000aec1baa6f25a for more information.
2025-02-28 13:02:02 -03:00
Bruno Perdigão
7a69d6f20e
Fix issue when updating wall x_angle with obtuse angle. See #5938
2025-02-28 13:02:02 -03:00
Bruno Perdigão
0104a2cc9f
Remove polyline wall size limit restriction. See #6162
2025-02-25 18:06:42 -03:00
Andrej730
43cc7a0304
Replace direct access to IfcStore with tool.Ifc
2025-02-19 18:31:07 +05:00
Andrej730
67bac441ad
typing
2025-02-19 18:31:06 +05:00
Dion Moult
b226a79ee8
See #5888 . Fix bug where polyline tools weren't part of the undo system.
2025-02-16 11:48:51 +11:00
Bruno Perdigão
06c6fa5dff
Fix #6064
...
Slabs offset are now measured perpendicularly.
2025-02-11 10:33:29 -03:00
Andrej730
4c0a7e1ca9
typing
2025-02-10 16:47:13 +05:00
Bruno Perdigão
2e70544bb8
Adjust offset in "change_extrusion_x_angle" to maintain position relative to the slab's top face.
2025-01-29 14:01:23 -03:00
Bruno Perdigão
d9903e93f2
See #5938 . This commit starts fixing this issue by:
...
- Fix wall decorator with obtuse angles.
- Preventing slabs from using obtuse angles, for now.
2025-01-28 16:10:17 -03:00
Dion Moult
03bfd828e2
See #5919 . API now has support for features, not just openings. Void module is renamed to feature.
2025-01-28 14:18:17 +11:00
Bruno Perdigão
2b1a59a4f8
Refactor how offset and direction sense interact for wall and slabs.
2025-01-25 16:05:04 -03:00
Andrej730
c12636f4cc
black .
2025-01-24 18:45:12 +05:00
Dion Moult
755d178b6b
Fix bug where adding / removing layers never triggered a regeneration of walls.
...
Continue our slow, ongoing purge of listeners.
2025-01-24 17:28:45 +11:00
Bruno Perdigão
fa174feaae
Refactor wall offset and direction after f724bb692
2025-01-23 15:33:39 -03:00
Bruno Perdigão
d8342134a0
Wall polyline tool - refactor offset functionality
2025-01-23 09:31:28 -03:00
Bruno Perdigão
8b678309fd
Refactor polyline tool instructions.
...
Follows 8fc0d7a808
2025-01-23 09:31:28 -03:00
Andrej730
a774a75509
black .
2025-01-22 16:00:11 +05:00
Bruno Perdigão
c72f17068c
Add support for direction sense and offset in slabs with x_angle
2025-01-21 10:49:29 -03:00
Bruno Perdigão
8d63845f3d
Change AddSlabFromWalls to consistently create walls in a counterclockwise direction.
...
This guarantees that the external face of the walls aligns with the edges of the slab.
2025-01-17 15:09:57 -03:00
Dion Moult
a63f67ad32
Fix #5841 . Incorrect axis usage when generating LAYER2 elements from polyline.
2025-01-16 23:19:11 +11:00
Bruno Perdigão
cf054e11a1
Refactor: improve preview decorators for other products, following 420a4cfdc
2025-01-09 15:59:15 -03:00
Andrej730
6965399b2a
typing
2024-12-30 17:07:52 +05:00
Andrej730
5ef10073cd
black .
2024-12-27 19:43:28 +05:00
Bruno Perdigão
b9423b191a
Add AddWallsFromSlab operator.
...
This operator allows users to create walls from a slab.
When the wall tool is active, pressing `Shift + A` will generate walls based on the exterior polygon of the selected slab.
2024-12-27 11:27:30 -03:00
Bruno Perdigão
d44942fbae
Typo
2024-12-23 18:10:35 -03:00
Bruno Perdigão
051da8e481
Allow mitre join to create a connection between contiguous walls.
2024-12-23 18:10:35 -03:00
Bruno Perdigão
46c7981842
Change "Split" function to create connection between the new walls.
2024-12-23 18:10:35 -03:00
Andrej730
37d9cade92
black .
2024-11-11 18:30:55 +05:00
Bruno Perdigão
10aad5a531
Change hotkey for angle lock in polyline tool, from "L" to "A".
2024-11-08 17:00:47 -03:00
Andrej730
4e070545ae
black .
2024-11-06 16:04:03 +05:00
Bruno Perdigão
05b32b3c32
Fix #4298
2024-10-31 15:38:57 -03:00
Andrej730
e8a2f3aed2
remove recalculate_dumb_wall_origin and don't mark aligned walls as edited
...
Since 5677768 recalculate_dumb_wall_origin is never used and bim.align_wall is either just changing the location (align_centerline) or might change object's representation but it's already saved to ifc (exterior/interior).
2024-10-22 18:20:27 +05:00
Andrej730
035b6d00c5
bim.align_wall.align_type - use enum
2024-10-22 18:20:27 +05:00
Andrej730
71c5e83fa0
typing
2024-10-22 18:20:25 +05:00
Bruno Perdigão
3077687c59
Move product preview logic to its own decorator.
2024-10-22 10:01:50 -03:00