Andrej
3bdce4fbc3
Make zip strict argument optional to support Python 3.9
2025-05-30 18:13:11 +05:00
Andrej
ad7473ff1f
Make dataclasses args optional to support Python 3.9 #6725
2025-05-30 18:13:10 +05:00
Andrej
0663c5130a
typing
2025-05-29 19:14:42 +05:00
Andrej
7cde9629f8
Fix Ruff UP034 (extraneous-parentheses)
...
https://docs.astral.sh/ruff/rules/extraneous-parentheses/
2025-05-28 18:24:13 +05:00
Andrej730
41eadf735e
add_representation - more readable error on using panoramic camera
2025-05-07 18:54:56 +05:00
Andrej730
10f84537de
typing
2025-04-28 19:14:19 +05:00
Andrej730
476604202a
typing
2025-04-21 19:00:24 +05:00
Andrej730
53cd5f834e
add_mesh_representation - reuse shape builder + numpy input support
2025-04-14 16:17:59 +05:00
Andrej730
6dc6fddd0e
add_mesh_representation - expand documentation and typing #6541
2025-04-14 16:17:59 +05:00
Andrej730
cf1f74e260
typing
2025-04-09 18:26:53 +05:00
Dion Moult
963ba5fc30
See #6404 . See #1227 . Create axis context if it does not exist for walls.
2025-03-21 16:45:29 +11:00
Dion Moult
8e1e0aec79
Fix #6404 . See #1227 . Fix IFC2X3 wall creation with new wall engine.
2025-03-21 16:30:56 +11:00
Andrej730
0e8810c1f5
typing
2025-03-14 18:19:02 +05:00
Dion Moult
41188e26e1
See #1227 . Don't touch manual booleans when regenerating wall body.
2025-03-10 22:54:42 +11:00
Dion Moult
4109b19c3a
See #1227 . Slightly more defensive to make sure ATPATH is between START and END
2025-03-09 18:31:49 +11: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
e5027e0be8
See #1227 . Implement updating of object position.
2025-03-09 08:52:05 +11:00
Dion Moult
01ec750814
See #1227 . New connect wall API function since this can be done generically.
...
This will supersede the butt/mitre join functions we used to have.
2025-03-08 11:25:07 +11:00
Andrej730
590288496e
typing
2025-03-07 17:12:58 +05:00
Dion Moult
ed722c6f13
See #1227 . Refactor out test waldo script into API function.
2025-03-07 19:05:24 +11:00
Andrej730
e1e51cbf26
black .
2025-03-05 18:53:56 +05:00
Andrej730
53a3afaded
typing
2025-03-04 18:10:41 +05:00
Andrej730
33d3984990
add_profile_representation - reuse util.shape methods
2025-03-04 18:10:41 +05:00
Bruno Perdigão
1855ac421c
Refactor slab addition to support obtuse x_angle. See #5938
...
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 refactor improves the coherence between those different parts.
Files changed:
- `api/geometry/add_slab_representation.py`
- `model/slab.py` - inside the function `change_thickness()`
File to be changed in a following commit:
- `model/wall.py` - inside the operator `ChangeExtrusionXAngle` - To-do
2025-02-28 13:02:02 -03:00
Bruno Perdigão
2609a8293c
Fix issue where walls are created with obtuse x_angle. See #5938
2025-02-28 13:02:02 -03:00
Andrej730
aaf008f007
Fix adding transom to door #6230 ( d23cfcb)
2025-02-25 18:28:48 +05:00
Andrej730
2f6ae1745f
typing
2025-02-25 18:28:48 +05:00
Andrej730
f7efbe5924
remove_representation - optimizations
...
1) `do_not_delete` performs best when it's set
2) also_consider when `element` related elements go first, so there will be no need to traverse all other elements to see if they cover `element`'s inverses.
2025-02-21 18:45:11 +05:00
Andrej730
25d8fff5fd
remove_representation - small optimizations
...
check schema version instead of accessing attribute directly (hasattr under the hood is just doing getattr and checking whether it returns AttributeError), so one less IFC access
Similar thing with element.Item to access IFC just once.
2025-02-20 19:12:24 +05:00
Andrej730
4efb79e472
fix missing get_spline_points in add_representation
2025-02-18 18:50:35 +05:00
Andrej730
17642ca4e9
typing
2025-02-18 18:50:34 +05:00
Dion Moult
37baa7a57b
Fix #5845 . Allow non GRAPH_VIEW reference representations. Apparently it's a thing in the docs.
...
If anybody can explain to me how Reference is meant to be used (the
example in the docs is really ambiguous) please do :)
2025-02-18 20:45:05 +11:00
Dion Moult
774a770c48
Purge usage of mathutils in grid API functions
...
The only thing left is add_representation which is Blender specific
anyway and is slowly being refactored out.
2025-02-16 08:20:59 +11:00
Dion Moult
d23cfcb2cf
Fix #2981 . Standard case windows can now have different materials and implement shape aspects.
2025-02-15 18:31:25 +11:00
Andrej730
f6087613f0
add_representation - use numpy arrays for calculations that include model offset
2025-02-11 18:14:45 +05:00
Andrej730
57d7d83ebb
Fix Python <3.10 support #6141
2025-02-11 16:50:07 +05:00
Dion Moult
ddf7d1b0b9
Change default behaviour of remove_representation not to remove named profiles
...
I guess this is a Bonsaism but it makes sense as named profiles are
significant, and it isn't the first time materials and profiles have
been treated as "rooted" in a sense. It's also annoying to keep on
having my profile library drop off when I'm just switching profiles.
2025-02-11 20:01:19 +11:00
Andrej730
e1c49ad317
Fix error adding transom to parametric door #6129
2025-02-10 16:47:14 +05:00
Dion Moult
d25f57ec40
See #2981 . Adding a door representation now also adds associated shape aspects
...
It doesn't add materials though, that's a separate responsibility right
now
2025-02-01 16:02:57 +11:00
Dion Moult
79e4ba5b19
New usecase to add shape aspect with tests
2025-02-01 00:46:00 +11:00
Andrej730
871710a0aa
Fix remove_representation error #6059
...
After to_delete was explicitly added as an attribute to ifcopenshell.file (previously it was kind of hacky assigned during batch remove).
2025-01-29 16:02:50 +05:00
Bruno Perdigão
c2c2d2d8f3
Revert 87c7309724. I misunderstood the expected behavior.
2025-01-28 17:37:20 -03:00
Bruno Perdigão
87c7309724
See #5938 . Fix bug where x_angle where changing the wall thickness.
2025-01-28 16:28:23 -03:00
Andrej730
c0306fc729
typing
2025-01-28 17:22:26 +05: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
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
5cf4740f8e
Add direction sense and offset support for slabs
2025-01-21 10:49:29 -03:00
Andrej730
c0499a2c88
black .
2025-01-20 16:16:38 +05:00
Dion Moult
a57a0eb4eb
See #5972 . Prioritise clipping results where possible.
2025-01-19 01:09:11 +11:00