Dion Moult
7c6e124fe9
See #1227 . Basic implementation of sloped walls (joins not yet considered)
bonsai-0.8.2-alpha2503051111
2025-03-05 22:10:33 +11:00
Andrej730
3fc312752b
Show an error for unsupport curve types #6259
bonsai-0.8.2-alpha2503041311
2025-03-04 18:10:42 +05:00
Andrej730
d0cb5456b3
Fix importing IfcPolylines always assuming they're closed
...
Resolved issue during import in #6259 but doesn't completely resolves the issue.
2025-03-04 18:10:42 +05:00
Andrej730
86072079de
draw_image_for_ifc_profile - optimizations using numpy
2025-03-04 18:10:42 +05:00
Andrej730
9440096106
Fix #6260 after 2f6ae17
2025-03-04 18:10:42 +05:00
Andrej730
649a913bbc
add_profile_representation - add test
2025-03-04 18:10:42 +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
Andrej730
5f86c6d1c2
shape_builder.create_axis2_placement_3d_from_matrix - small optimization
...
create_axis2_placement_3d now is fine with numpy arrays
bonsai-0.8.2-alpha2503030859
bonsai-0.8.2-alpha2503030857
2025-03-03 13:54:57 +05:00
Andrej730
10d5378ee3
TessellateElements - small optimization
...
tolist() supports conversion of multidimensional arrays too
2025-03-03 13:54:57 +05:00
Andrej730
7f27785927
docs fixes
...
1) material.add_profile_set doesn't exist
2) usecase.file is not defined, use `model` instead`
3) Specify material for material.assign_material
2025-03-03 13:54:57 +05:00
Andrej730
fed063a0c6
edit_profile_usage - add test
2025-03-03 13:54:56 +05:00
Andrej730
855062e36b
Quick to select profile from BIM Tool in Profile UI
...
Example - https://imgur.com/a/tJdQUGq
2025-03-03 13:54:56 +05:00
Andrej730
7b74b6c68f
Simplify edit_profile_usage with util.shape
2025-03-03 13:54:56 +05:00
Andrej730
a01278aa8d
ifcopenshell.util.shape to return Python floats if return is just a scalar
2025-03-03 13:54:56 +05:00
Ryan Schultz
99c49736fa
small tweak
bonsai-0.8.2-alpha2503021632
2025-03-02 10:31:46 -06:00
Bruno Postle
c1efdbb8ea
black .
bonsai-0.8.2-alpha2503021139
2025-03-02 11:37:52 +00:00
Bruno Postle
e240ae2669
Fix bpy.ops.bim.select_by_material() for layersets
...
This operator assumes all material definitions have a Name attribute,
mostly they do except that Material Layer Sets have a LayerSetName
attribute for reasons.
bonsai-0.8.2-alpha2503021127
2025-03-02 11:24:07 +00:00
Ryan Schultz
945099b817
Set IfcMaterialLayerSetUsage's DirectionSense/OffsetFromReferenceLine/ReferenceExtent on all selected objects
bonsai-0.8.2-alpha2503020005
2025-03-01 18:04:41 -06:00
Bruno Perdigão
f4b0fe6560
Polyline tool - Fix issue where Y and Z axis lock were inverted when in YZ plane.
bonsai-0.8.2-alpha2502281653
2025-02-28 13:52:20 -03:00
Bruno Perdigão
efc6842a9d
Improve snapping for empty objects.
bonsai-0.8.2-alpha2502281644
2025-02-28 13:44:00 -03:00
Bruno Perdigão
43931e951e
Fix another issue (follows 2609a8293c) with walls created with obtuse x_angle.
bonsai-0.8.2-alpha2502281622
2025-02-28 13:19:51 -03:00
Bruno Perdigão
134a480b03
Fix slab preview decorator when using obtuse x_angle.
bonsai-0.8.2-alpha2502281602
2025-02-28 13:02:02 -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
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
7a69d6f20e
Fix issue when updating wall x_angle with obtuse angle. See #5938
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
Bruno Perdigão
e68c47a897
Remove code related to 0104a2cc9f
2025-02-28 13:02:02 -03:00
Andrej730
06fa2b05d6
Fix #6245 after 17642ca
bonsai-0.8.2-alpha2502281331
2025-02-28 18:31:14 +05:00
Andrej730
db52e70121
Fix possibility of adding new invalid surface styles
...
1) Add default values for new IfcSurfaceStyleLighting so they won't appear invalid.
2) Temporarily disable starting surface style with a texture style since it requires additional texture UI to be exposed or some default texture to be assigned to keep it valid.
2025-02-28 18:31:14 +05:00
Andrej730
c81fe97cc2
Fix bim.change_cardinal_point breaking if one of objects had no material
2025-02-28 18:31:13 +05:00
Andrej730
b9f4503206
Paramteric doors/windows - detect previously assigned materials when editing is enabled
...
Example - https://imgur.com/a/FEbSBaX
2025-02-28 18:31:13 +05:00
Andrej730
bd4dc501a2
Pamateric doors/windows - add material select shortcut to UI
...
Example - https://i.imgur.com/UfJTjGz.png
2025-02-28 18:31:13 +05:00
Andrej730
8d1255f0bc
Fix toggling wireframe for odd case when there are no objects linked
...
Noticed investigating #6242
2025-02-28 18:31:13 +05:00
Andrej730
cc7abe6a8d
Fix error applying blender offset to read-only matrix (e.g. during linking)
...
Example:
```
File "\bonsai\bim\module\project\operator.py", line 1815, in execute
self.process_occurrence(shape)
File "\bonsai\bim\module\project\operator.py", line 1952, in process_occurrence
obj.matrix_world = tool.Loader.apply_blender_offset_to_matrix_world(obj, mat)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "\bonsai\tool\loader.py", line 952, in apply_blender_offset_to_matrix_world
matrix[0][3] = offset_xyz[0]
~~~~~~~~~^^^
ValueError: assignment destination is read-only
```
Noticed investigating #6242
2025-02-28 18:31:12 +05:00
Andrej730
edfcc3f74b
ifc2sql - change default database name to match default sql_type
...
Co-Authored-By: bsmithuk <68438529+bsmithuk@users.noreply.github.com >
2025-02-28 18:31:12 +05:00
Andrej730
b1c87b1eb4
Set tools hotkeys name to empty string to hide it from tooltip #6238
2025-02-28 18:31:12 +05:00
Andrej730
d37bda6871
cad operators - add descriptions #6238
2025-02-28 18:31:12 +05:00
Andrej730
bb0d156bbf
cad operators - use Blender units for props
2025-02-28 18:31:12 +05:00
Andrej730
b89ffcb6d0
SplitByBuildingStorey - ensure user won't pass a file by accident
2025-02-28 18:31:12 +05:00
Andrej730
323967b9fd
Fix ifc2sql test after 9055f14bb9
2025-02-28 18:31:11 +05:00
Andrej730
4dd10b16e6
SplitByBuildingStorey - Bonsai to recognize filepath argument after cac3d7f
2025-02-28 18:31:11 +05:00
Andrej730
15a0d43180
fix for glob pattern in 62d53ba62d
2025-02-28 18:31:11 +05:00
Andrej730
5a1f7000ec
ifcpatch - add simple test for docs generator
2025-02-28 18:31:11 +05:00
Andrej730
277aaca6c5
typing
2025-02-28 18:31:10 +05:00
Andrej730
9187f2d2b5
Bonsai patcher - small fix for cases when Blender restarts
2025-02-28 18:31:10 +05:00
Andrej730
62d53ba62d
Bonsai - recognize ifc2sql database argument as filepath #6227
bonsai-0.8.2-alpha2502271336
bonsai-0.8.2-alpha2502280556
bonsai-0.8.2-alpha2502280618
2025-02-27 18:35:43 +05:00
Andrej730
9055f14bb9
Ifc2Sql - hide IFC output argument as there's already database argument #6227
...
Also handle directory paths more gracefully.
2025-02-27 18:35:43 +05:00
Andrej730
0bd608b6cb
Bonsai - ifcpatch description to include arguments descriptions
...
Also fix a bug with broken patch descriptions if some argument had more than one line for the description.
Example - https://i.imgur.com/1syL4gJ.png
Notcied working on #6227
2025-02-27 18:35:43 +05:00
Andrej730
497542d7a0
ifc2sql - small optimizations
2025-02-27 18:35:43 +05:00