Ryan Schultz
cc90340b3b
tweaked active operator
2024-10-26 14:22:18 -05:00
Ryan Schultz
db075c7160
display the sum of all selected objects
2024-10-26 13:26:11 -05:00
Thomas Krijnen
ea48996f0d
Double check for relationship subtype when processing openings on aggregate parent #5639
2024-10-26 14:53:36 +02:00
Andrej730
6b55e5e6ee
Fix find_openings for ifc2x3 #5639
2024-10-25 17:43:41 +05:00
Richard Brice
e270583451
Fixes unit conversion on clothoid constant
2024-10-24 08:43:47 -07:00
Andrej730
99dc4795c7
Reset not applied objects scales during project save
...
We try to apply scales using bim.update_representation and if didn't worked (presumably because object has openings) we reset the scales.
It was confusing for users that they scaled an object, saved IFC and they would know that scaling didn't worked only after they reopen the IFC project.
2024-10-24 18:38:17 +05:00
Andrej730
1642f231fb
typing
2024-10-24 18:38:17 +05:00
Andrej730
9998442eb4
Use common method for checking if object is scaled
2024-10-24 18:38:16 +05:00
Andrej730
4040c31583
Lock scale for objects with openings
...
Currently there is an UX problem that it's not clear for users when it's possible to use scale or not. We definitely won't be able to safely apply scales for objects with openings, so will try to lock them from the start.
2024-10-24 18:38:16 +05:00
Andrej730
6614245fc1
Fix unnamed button for editing openings
2024-10-24 18:38:16 +05:00
Andrej730
c7a41b46fd
More complete fix for breaking styles ui e85043ae3
...
Now it also doesn't break if user will undo style rename.
2024-10-24 18:38:16 +05:00
Andrej730
dfd11fb723
black .
2024-10-24 18:38:16 +05:00
Manu Varkey
8d3aa98b58
Implement rounding of elevation ( #5532 )
...
* Implement rounding of elevation
Implement rounding of elevation based on precision stored in IfcGeometricRepresentationContext
* Move formating function to tool
2024-10-24 15:17:47 +05:00
Andrej730
b08acd1625
Fix incorrect error message for bim.link_ifc when linking using 'files' argument
...
self.filepath is empty if bim.link_ifc was executed using 'files' argument
2024-10-24 14:25:26 +05:00
Andrej730
181b0cefc3
Fix linking ifc from shared folder on Windows #5386
...
The problem was that shared folders names are starting with `\\`, e.g. `\\SERVERNAME\shared_folder`. When we pass path strings we usually sanitize them and save them as posix, so it's saved as `//SERVERNAME/shared_folder` and Blender has a convention that paths starting with `//` it interprets as filepaths relative to the current .blend file, therefore it was giving some weird error that `C:\Users\xxxx\SERVERNAME\shared_folder\test.blend` is missing instead of `\\SERVERNAME\shared_folder`.
So need to be careful passing strings to Blender operators and use str instead of as_posix for those operators, so \\` wouldn't be misinterpreted.
2024-10-24 14:25:25 +05:00
Andrej730
e85043ae31
Fix styles UI breaking on undo
...
Turn out storing bpy.types.PropetyGroups was not very reliable idea as they get invalidated, just as Objects.
It's still breaking if you'd try to rename the style and then undo.
2024-10-23 18:34:03 +05:00
Andrej730
ca0e4f9cd6
Fix error duplicating type when current tool doesn't match the type #5591
2024-10-23 18:34:03 +05:00
Andrej730
3ff0ff66a4
Try to ensure undo will still work in case of an error
...
Previously transaction was never finished and therefore is_top_level_operator would never be triggered (without restarting project) making any IFC undo useless.
Previously it wsan't finishing transaction therefore:
- it was possible to undo ifc changes in the last step that had an error
- since transaction was never finished, IfcStore.current_transaction was never cleared and therefore is_top_level_operator will be never be triggered for the next operators, so new transactions are never created breaking undo for any further ifc changes.
Now user can try to undo the last action to save the file.
2024-10-23 18:34:02 +05:00
Andrej730
0ea71b0795
Ifc.Operator - remove second refresh_ui_data
...
Seems to be already covered by refresh_ui_data in IfcStore.execute_ifc_operator.
2024-10-23 18:34:02 +05:00
Andrej730
932a718d2d
limit active_material_index handler callback
2024-10-23 18:34:02 +05:00
Andrej730
106b6f74e1
Handle listeners on unlink commit/rollback
2024-10-23 18:34:02 +05:00
Andrej730
88de650660
Simplify IfcStore.relink_object
2024-10-23 18:34:02 +05:00
Andrej730
72ea93bc0f
Prevent adding None to guid_map
...
OperationData was always including guid key, so guid_map[None] was pointing to some object (typically a style). Also covered by rebuild_element_maps in the most cases.
2024-10-23 18:34:02 +05:00
Andrej730
6f347bcb81
Undo to clear listeners for linked objects
...
Typically it's already covered by rebuild_element_maps after undo but just to be consistent with commit_link_element.
2024-10-23 18:34:01 +05:00
Andrej730
fa29c42887
common method for setting up Blender listeners for objects
2024-10-23 18:34:01 +05:00
Andrej730
86edd52894
Unlinking elements to clear Blender listeners
...
to prevent unnecessary callbacks
2024-10-23 18:34:01 +05:00
Andrej730
db0a72c794
Add min/max values for roof angle/percentage
...
That way those props should be easier to edit, previously dragging "percentage" would go to infinity very quickly.
2024-10-23 18:34:01 +05:00
Andrej730
d68dee148b
Fix infinite recursion with angle/percentage roof properties in 2597827
...
Probably was harmless, it was just flooding the console with errors such as:
object address : 000002485A776380
object refcount : 2
object type : 00007FFBD1249050
object type name: RecursionError
object repr :
lost sys.stderr
File "\bonsai\bim\module\model\prop.py", line 707, in <lambda>
object address : 000002485A774520
object refcount : 2
object type : 00007FFBD1249050
object type name: RecursionError
object repr :
lost sys.stderr
File "\bonsai\bim\module\model\prop.py", line 713, in <lambda>
2024-10-23 18:34:01 +05:00
Andrej730
a1134e83a4
Fix test after 8372e12f8
2024-10-23 18:34:00 +05:00
Andrej730
b61927b460
deprecate Style.get_style
...
In favor of Ifc.get_entity
2024-10-23 18:34:00 +05:00
Andrej730
863633f2dc
Prevent adding name callback to non-ifc blender materials
...
Also removing one more artifact from #4843
2024-10-23 18:34:00 +05:00
Andrej730
b7dfeaee37
typing
2024-10-23 18:34:00 +05:00
Andrej730
2771465996
black .
2024-10-23 18:34:00 +05:00
Ryan Schultz
f62b1ed326
Have svg tags with IfcColumn/IfcBeam classes always on top.
...
discussion: https://community.osarch.org/discussion/2572/a-clever-way-to-get-a-column-buried-in-a-wall-to-still-read-when-you-print-a-drawing
2024-10-22 18:45:19 -05:00
Bruno Perdigão
0c0225543b
Add polyline tool for slabs.
...
No preview yet.
2024-10-22 17:39:19 -03:00
Bruno Perdigão
ffe8d4fad2
Make wall preview decorator work only with IfcWallType.
2024-10-22 17:32:48 -03:00
Andrej730
c18d2e8c17
ifcopenshell.file - store default history_size in class instead of instance
2024-10-22 18:20:29 +05:00
Andrej730
70521b1020
IfcStore.edited_objs - document issues
2024-10-22 18:20:29 +05:00
Andrej730
a777d67252
bim.generate_space - add a test
2024-10-22 18:20:29 +05:00
Andrej730
7544053f0b
bim.generate_space not to fail silently
2024-10-22 18:20:29 +05:00
Andrej730
7bebd2f7ce
bim.generate_space - fix missing undo step
2024-10-22 18:20:29 +05:00
Andrej730
64fe2240e6
bim.generate_space - not to produce orphaned ifc mesh
...
Orphaned mesh was also linked to IFC which could have lead to some hard to debug issues.
2024-10-22 18:20:28 +05:00
Andrej730
54b104b822
fix not working bim.generate_space because of the units mismatch
...
Not sure when this occurred but get_bmesh_from_polygon was expecting Polygon in project units but it was SI. Since it's probably better to move everything to SI, added an option to specify whether polygon is in SI or not.
2024-10-22 18:20:28 +05:00
Andrej730
abd7c93c35
bim.generate_space - document
2024-10-22 18:20:28 +05:00
Andrej730
5c56ea6343
spatial tool ui - sync shift-a hotkey UI with hotkey_S_A
...
Previously it was always showing two S_A operators
2024-10-22 18:20:28 +05: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
931e945044
Fix broken centerline alignment hotkey after e8f66ab
...
Ping @trhyder just in case
2024-10-22 18:20:27 +05:00
Andrej730
5eeea23774
bim.align_product - document
2024-10-22 18:20:27 +05:00
Andrej730
2a44af57d2
bim.align_product.align_type to use enum
...
to make it less error prone
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
8372e12f88
deprecate geometry.is_edited
...
in favor of ifc.is_edited
2024-10-22 18:20:26 +05:00
Andrej730
76869b0b02
deprecate misc.mark_object_as_edited
...
in favor of ifc.edit
2024-10-22 18:20:26 +05:00
Andrej730
5c08b8f22d
bim.resize_to_storey - document
2024-10-22 18:20:26 +05:00
Andrej730
bcf54b643d
Hide scale warning for non ifc objects
2024-10-22 18:20:26 +05:00
Andrej730
71c5e83fa0
typing
2024-10-22 18:20:25 +05:00
Andrej730
9eaecdb0a4
black .
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
Bruno Perdigão
71997d37c0
Add support for cardinal point in beam and column preview.
2024-10-21 21:51:27 -03:00
Bruno Perdigão
acc9e7f706
Adds beam and columns to insertion point product preview.
2024-10-21 16:29:23 -03:00
Bruno Perdigão
5fa5b28484
Allow AddOccurence to use default container elevation value.
2024-10-21 11:10:10 -03:00
Bruno Perdigão
745c8e173a
Small fix after 14917d2c3
2024-10-21 10:46:26 -03:00
Bruno Perdigão
14917d2c31
Windows and Doors preview now get the wall rotation.
2024-10-21 10:34:42 -03:00
Bruno Perdigão
340916a5a4
Refactor snapping point selection to add the object name.
2024-10-21 10:34:42 -03:00
Bruno Perdigão
734ac2ba70
Fix issue with using shift + mousewheel while polyline is active.
2024-10-21 10:34:42 -03:00
Andrej730
dbfe3ea3c4
bim.update_representation - error message for objects with openings
2024-10-21 18:05:27 +05:00
Andrej730
c581946fa8
railing, roof - save representation to ifc instead of marking it as edited #5610
2024-10-21 18:05:27 +05:00
Andrej730
492df2310d
parametric stair - don't mark object as edited
...
As representation already saved to IFC and edited_objs seems to be getting less reliable because of the openings.
2024-10-21 18:05:27 +05:00
Andrej730
e8eb3972a1
Support styles without shading styles after 189bcd5
...
Noticed that after 189bcd5 some representations were missing styles - the ones that are using IfcSurfaceStyle with just IfcExternallyDefinedSurfaceStyle.
Ping @aothms just in case
2024-10-21 16:45:50 +05:00
Andrej730
45b3008b99
bim.edit_style to update representations if Side was edited
...
Mentioned in #5604 . Since IfcSurfaceStyle.Side is used during representation generation, we need to regenerate them if the value was changed. Previously it would require manual update / project reload.
2024-10-21 16:45:50 +05:00
Andrej730
ce6c56cab4
model.workspace - cache is_representation_item
...
To avoid accessing IFC on every draw call
2024-10-21 14:40:39 +05:00
Andrej730
1d90665c3a
split_by_loose_parts to preserve the objects selection
...
Noticed that bim.assign_class started to loose the objects selection after 29d6d2b
2024-10-21 14:40:39 +05:00
Andrej730
6bfbcb8f92
typing
2024-10-21 14:40:38 +05:00
Andrej730
4acdd7c960
Fix assigning cost item to resource after 97393eb #5601
...
fyi @myoualid
2024-10-21 11:26:09 +05:00
Richard Brice
647e379c69
Fixes problem with evaluating point on vertical alignment
...
Fixes evaluation of IfcLine parent curve for IfcGradientCurve. See https://github.com/IfcOpenShell/IfcOpenShell/discussions/5587
2024-10-20 08:19:49 -07:00
Thomas Krijnen
18d5957424
Defensiveness against invalid syntax #5608
2024-10-20 14:17:13 +02:00
Chris Mayo
65ecb92c03
python: Fix ifcopenshell.guid.new()
...
pyException:
<class 'AttributeError'>: module 'ifcopenshell' has no attribute 'guid'
2024-10-20 14:01:34 +02:00
Bruno Perdigão
b8d98b7512
Black format
2024-10-19 11:15:30 -03:00
Bruno Perdigão
97ed3bb0d5
Add product preview for mesh type objects when insertion point is active.
...
Currently works with doors, windows and furnitures.
2024-10-19 10:57:06 -03:00
Bruno Perdigão
217ada0993
Refactor wall preview for polyline tool.
2024-10-19 10:25:03 -03:00
Chris Mayo
dcd6acb1f4
Install cityjson_converter lib and exe
...
Fixes:
$ IfcConvert
IfcConvert: error while loading shared libraries: libcityjson_converter.so: cannot open shared object file: No such file or directory
2024-10-19 13:48:17 +02:00
Andrej730
122ec6fb0a
Use clever Blender length props for editing representation item extrusion depth
...
Example - https://imgchest.com/p/ljyqzpmwoy2
2024-10-18 18:12:00 +05:00
Andrej730
60837b9512
Operator to save pset as a template
...
Mentioned in #5596
Example - https://imgchest.com/p/5xy235xvj4l
Adds 2 things:
1) UI indicator whether pset is based on template or not
2) When pset is not based on a template, indicator becomes clickable and works as a shortcut for creating pset template based on the current pset.
2024-10-18 18:11:59 +05:00
Andrej730
ada4a8884b
tool.PsetTemplate
2024-10-18 18:11:59 +05:00
Andrej730
a27bdc4e3e
Add description to pset template props
...
As name doesn't seem to be displayed in the enum tooltip
2024-10-18 18:11:59 +05:00
Andrej730
43cecf6c5e
Hide 'remove pset template/file' operator when there are no templates/files
2024-10-18 18:11:59 +05:00
Andrej730
4666589fcd
bim.add_pset_template to add psets with unique names for convenience
2024-10-18 18:11:59 +05:00
Andrej730
e3ef64d0b3
Fix UI error switching between pset template files
2024-10-18 18:11:59 +05:00
Andrej730
828160c1b1
Fix UI errors if there are no pset template files
2024-10-18 18:11:59 +05:00
Andrej730
832ccff139
fix broken enum after removing pset template/file
2024-10-18 18:11:59 +05:00
Andrej730
17e67fbdaa
bim.remove_pset_template_file - note
2024-10-18 18:11:58 +05:00
Andrej730
01b28fde6f
remove BIMPsetTemplateProperties.new_template_filename
...
- as it was only used inside bim.add_pset_template_file operator
- also remove second unnecessary ":" in the prop label (":" is automatically added by Blender)
2024-10-18 18:11:58 +05:00
Andrej730
9130659f71
ifcopenshell.open - readable error if file doesn't exist
...
Previously it would show obscure error like:
RuntimeError: Type held at index 0 is class Blank and not class std::vector<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > >
2024-10-18 18:11:58 +05:00
Andrej730
e073f11e25
typing
2024-10-18 18:11:58 +05:00
Andrej730
dbd64ebb0e
black .
2024-10-18 18:11:58 +05:00
Thomas Krijnen
ecba1c3e7b
Fix for UVs in python binding #5592
2024-10-18 10:37:53 +02:00
Andrej730
5837a143da
bump IOS #5583
2024-10-18 11:55:38 +05:00
Bruno Perdigão
01c67eea48
Fix issue with joining walls with negative direction sense.
2024-10-18 07:49:46 +11:00
Andrej730
0e5008d21e
Bonsai daily build tag to include hours and minutes
...
The problem is index.json is using urls pointing to zip files from the releases and it's possible that installation from unstable repo will be broken (user will get error message like '"Archive size mismatch "bonsai", expected 87417726, was 87418259"') in 2 cases:
1) during 5 minutes after commit while builds are still uploaded to the releases but index.json is not yet updated
2) if some builds were uploaded and some builds failed to upload, then for platforms that were uploaded successfully unstable installation will be broken until we fix the builds
When we add hours and minutes to the tag, that should be enough to make urls unique for each build avoiding this problem. If needed we can came up with some mechanism to clean up all builds besides the last one.
2024-10-17 18:25:08 +05:00
Andrej730
b17eacfa6a
typing
2024-10-17 18:25:08 +05:00
Thomas Krijnen
a04912e174
Assure edges are emitted in some topological order
2024-10-17 14:35:17 +02:00
Andrej730
ee7fd0cadf
Fix issues with unsanitized cache names #5589
...
Underlay filename wasn't sanitized when saved to 'cache' and when added to .svg but later when it's moved from 'cache' to 'drawings' folder the filename was regenerated using sanitized main .svg filename leading to issues.
2024-10-17 15:10:29 +05:00
Andrej730
5ae75d32bd
fix bug in a0e660583 #5585
2024-10-16 21:23:56 +05:00
Andrej730
a0e6605834
support adding parametric roof to object without representations
2024-10-16 18:00:43 +05:00
Andrej730
903e673984
Fix adding parametric geometry operators missing undo step
...
This also seems to by accident resolve #5565 🤨 🤨 🤨
2024-10-16 18:00:43 +05:00
Andrej730
a7efdb0bff
support adding parametric stair to object without representations
2024-10-16 18:00:43 +05:00
Andrej730
695ab0bfab
bump ifc sverchok #5546 #5178
2024-10-16 18:00:43 +05:00
Andrej730
e9e89c1280
remove unnecessary second style reload when disabling style editing
2024-10-16 18:00:43 +05:00
Andrej730
e29f8ce18a
clear collections properties for styles when not editing
2024-10-16 18:00:43 +05:00
Andrej730
ee892f63bf
Fix bug loading wrong external style #5576
...
By mistake it was always using currently edited external style, even if external style was not edited anymore and even if it was different style currently edited.
2024-10-16 18:00:43 +05:00
Andrej730
bb8e1866b0
Subscribe to viewport shading changes for appended BIM workspace too
2024-10-16 18:00:42 +05:00
Andrej730
3a5856511d
bim.update_current_style - optimization for updating styles for multiple objects
2024-10-16 18:00:42 +05:00
Andrej730
725df97ac0
bim.save_project to preserve relative ifc path #5407
2024-10-16 18:00:42 +05:00
Andrej730
98888d5096
bim.load_project - use_relative_path to override should_start_fresh_session
2024-10-16 18:00:42 +05:00
Andrej730
14d44dcd3e
remove ExportIFCBase as it's unused
2024-10-16 18:00:42 +05:00
Andrej730
7f1f249759
typing
2024-10-16 18:00:42 +05:00
Andrej730
3113d62c85
black .
2024-10-16 18:00:35 +05:00
Gorgious56
58b46da04d
Fix SHIFT+D shortcut for duplication not working for vanilla non-meshlike objects (eg lights)
2024-10-16 11:56:04 +02:00
Bruno Perdigão
db77d06a8a
Fix error introduced by b9c6508aa
2024-10-15 23:21:38 -03:00
Dion Moult
4684aa4a55
Fix bug where you couldn't add conditional material psets
2024-10-16 12:26:33 +11:00
Bruno Perdigão
b9c6508aa7
Polyline wall ability to switch axis while drawing.
...
While drawing the polyline the user can press:
- F to flip the wall. Changes the direction sense.
- O to change the offset type between Exterior, Center and Interior. This will change the offset from reference line.
Those attributes can be verified in the Object Materials panels of each wall after they are created.
2024-10-15 21:58:34 -03:00
Bruno Perdigão
d7bf8eba02
Fix small issue with the area decorator for the measure tool.
2024-10-15 21:47:42 -03:00
Bruno Perdigão
e7a725dca3
Fix #5562
2024-10-15 21:25:16 -03:00
Bruno Perdigão
f763e4b0a7
Remove increment snap from the measure tool.
2024-10-15 10:01:25 -03:00
Andrej730
12742bd08c
bim.load_project to support relative paths #5407
2024-10-15 17:57:00 +05:00
Andrej730
8940ec7b80
hide non-ifc objects from relating product dropdown
2024-10-15 17:57:00 +05:00
Andrej730
cb2895cc41
util.shape for materials and material_ids
2024-10-15 17:57:00 +05:00
Andrej730
1facba797d
aggregate data - small optimization
...
check for first BBIM_Linked_Aggregate instead of iterating over all rels
2024-10-15 14:30:49 +05:00
Andrej730
a76e802ab4
aggregate module - remove unnecessary ifc operators
2024-10-15 14:30:49 +05:00
Andrej730
afeec29261
Document bim.aggregate_assign_object
2024-10-15 12:34:07 +05:00
Andrej730
6c573445dd
More clever object selection for assigning aggregates #5560
...
Basically those two properties (Relating Whole and Related Part) are now showing only objects that are valid for the assigning an aggregate - https://i.imgur.com/bqQsXhG.png
2024-10-15 12:34:07 +05:00
Andrej730
f17c2eb80e
bim.query_linked_element - close db connection manually
...
otherwise it seems it was never closed (even if you open some other ifc project in current blender session) and .sqlite file is locked from being deleted (at least on Windows)
2024-10-15 11:28:37 +05:00
Andrej730
0888cbb675
small fix 2aeb87b5f
2024-10-14 17:53:12 +05:00
Andrej730
2aeb87b5fe
reuse ifcopenshell.util.shape
2024-10-14 17:37:34 +05:00
Andrej730
79c09ae225
Error appending inspected linked element for detailed meshes #5415
...
Was resulting in error below for meshes with > 1000 face indices (>~333 tris)
last_error: Traceback (most recent call last):
File "C:\Users\Ryan Schultz\AppData\Roaming\Blender Foundation\Blender\4.2\extensions\.local\lib\python3.11\site-packages\bonsai\bim\ifc.py", line 408, in execute_ifc_operator
result = getattr(operator, "_execute")(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Ryan Schultz\AppData\Roaming\Blender Foundation\Blender\4.2\extensions\.local\lib\python3.11\site-packages\bonsai\bim\module\project\operator.py", line 1858, in _execute
ifc_file = ifcopenshell.open(queried_obj["ifc_filepath"])
~~~~~~~~~~~^^^^^^^^^^^^^^^^
KeyError: 'bpy_struct[key]: key "ifc_filepath" not found'
2024-10-14 17:37:29 +05:00
Andrej730
686514b88a
fix toggling link visibility after be68a8f #5524
2024-10-14 17:37:29 +05:00
Andrej730
a014cd58e3
fix toggling link selectibility after be68a8f #5524
2024-10-14 17:37:29 +05:00
Andrej730
090c670f04
avoid reimport representation meshes having .001 suffixes
2024-10-14 17:37:29 +05:00
Andrej730
d1b9d9697e
document.operator - remove unnecessary ifc operators
2024-10-14 17:37:28 +05:00
Andrej730
fe316e2741
documents ui - hide Name attribute from editing for document references #5542
...
To avoid invalid ifc.
2024-10-14 17:37:28 +05:00
Andrej730
16553417c1
document.import_references - note about not using Name #5542
2024-10-14 17:37:28 +05:00
Andrej730
fac9444cfd
ifc5d - use utf-8 encoding for reading csv files #5561
...
Same encoding as we use in Ifc5DCsvWriter.
2024-10-14 17:37:28 +05:00
Andrej730
cd8f6e2c78
typing
2024-10-14 17:37:28 +05:00
Andrej730
9e2189fea4
prop_with_search for external styles enum #5569
...
Ping @Gorgious56 as perhaps you might be interested in this weird case - it seems passing Operator with context_pointer_set makes it OperatorProperties which doesn't have original __annotations__.
2024-10-14 12:23:31 +05:00
Andrej730
5ffef568f7
black .
2024-10-14 12:23:31 +05:00
tim
9ccbd332cf
Type Manager fixes
...
- Corrected the alignment of the Type Manager preview in tool header
- Improved click-ability of the thumbnail icon in the Type Manger preview in the side bar
2024-10-14 11:47:23 +11:00
Ryan Schultz
a1fb4d6b81
fix #4051 : filter to only show IfcProfileDefs that are attached to IfcMaterialProfiles
2024-10-13 11:24:41 -05:00
Ryan Schultz
2f0500a14b
have dimensions like 0 7/8" read like 7/8"
2024-10-13 08:48:21 -05:00
Bruno Perdigão
6f6700db06
Fix bug with mixed snap.
2024-10-11 10:38:15 -03:00
Bruno Perdigão
0235d84f25
Fix small issue with area and length measurement text in polyline tool.
2024-10-11 09:43:23 -03:00
Bruno Perdigão
1225073bef
Remove debug print statement
2024-10-11 08:47:39 -03:00
Dion Moult
fb714e8fd8
Fix #5482 . Reimplement handling of arc detection to allow consecutive arcs.
2024-10-11 21:33:10 +11:00
Dion Moult
a0aa5396c9
Purge option for native meshes
2024-10-11 20:18:47 +11:00
Bruno Perdigão
017de3bd59
Fix measurement area text showing in wall polyline
2024-10-10 22:08:19 -03:00
Bruno Perdigão
fe5dada256
Fix measurement area text position.
2024-10-10 21:48:11 -03:00
Bruno Perdigão
fe0aa4b5b7
Change angle increment for axis snap.
2024-10-10 20:59:57 -03:00
Bruno Perdigão
3a2f29aefc
Fix bug in measurement area decorator.
...
Make input validation accept "m²" and "mm²"
2024-10-10 20:59:57 -03:00
Bruno Perdigão
cdaa782c18
Poyline tool - Adds more layers to increment snap base on viewport zoom.
2024-10-10 20:59:57 -03:00
Bruno Perdigão
b4d652d12e
Fix small issue with snap axis when using measure tool with different planes
2024-10-10 20:59:57 -03:00
Bruno Perdigão
014edcdadc
Fix X, Y and Z axis snapping after e673226ea1249a2432ff7b00a7581d750825b544
2024-10-10 20:59:57 -03:00
Bruno Perdigão
3f2efcc846
Fix small issue with increment snap
2024-10-10 20:59:57 -03:00
Bruno Perdigão
095c854d41
Improves angle snapping
2024-10-10 20:59:57 -03:00
Bruno Perdigão
dd646d2763
Increment snap now works only for plane and axis snapping.
2024-10-10 20:59:57 -03:00
Dion Moult
a32c4ae694
CGAL-Hybrid is now the default. Let's see what happens!
2024-10-11 08:49:42 +11:00
Dion Moult
2e21ec749b
Fix #5538 . Purge native mesh handling in Blender. This is now obsolete with CGAL-Hybrid.
2024-10-11 08:40:22 +11:00
Thomas Krijnen
189bcd5ad6
Maintain identity and cache styles based on surface-style-shading not styled-item #5486
2024-10-10 16:48:30 +02:00
Dion Moult
dc1842dbe8
Fix #5520 . Incorrect double calculation of daylight savings and UTC zone.
2024-10-10 22:02:50 +11:00
Dion Moult
c75e2e3fc0
Fix failing core tests
2024-10-10 21:36:48 +11:00
Dion Moult
10e76a09de
Fix failing MacOS builds
2024-10-10 21:12:35 +11:00
Thomas Krijnen
766f8adce7
nix/build-all propagate BUILD_SHARED_LIBS for -shared build
2024-10-10 09:16:28 +00:00
Dion Moult
47f013fc18
Add support for adding curvelike items
2024-10-10 18:34:20 +11:00
Dion Moult
bd42fc9cef
Add support for editing curves
2024-10-10 14:45:05 +11:00
Bruno Perdigão
0eb713a7ff
Fix #5545
2024-10-09 14:37:04 -03:00
Bruno Perdigão
50c6cbcb2d
Polyline tool now shows dimensions for meters and centimeters.
2024-10-09 12:04:45 -03:00
Bruno Perdigão
304db50692
Improved snap hierarchy to allow better face snapping.
2024-10-09 10:41:53 -03:00
Bruno Perdigão
1a55212099
Revert snap stickiness value after changes in increment snap.
2024-10-09 10:28:40 -03:00
Bruno Perdigão
ddd17d519e
Fix error that was preventing 3d panning while polyline tool is active.
...
This error was introduced by 48784ba
2024-10-09 10:19:51 -03:00
Bruno Perdigão
481e6b8a8d
New implementation for increment snap.
...
The first implementation was based directly on Blender increment snap.
The new one works just by rounding distance and angle to a better number.
The rounding is still contextual to the window zoom.
2024-10-09 10:14:07 -03:00
Thomas Krijnen
d01438e7f1
Retain transform when doing unification in kernel
2024-10-09 13:16:58 +02:00
Thomas Krijnen
da0d383666
Distinction between general exception / not supported / not implemented #5484
2024-10-09 13:14:49 +02:00
Thomas Krijnen
a38a3ad2fb
Fix funky mep geometry #5255
2024-10-09 09:34:52 +02:00
Dion Moult
bba862e3ae
Fix #5544 . Assign / add of objects with styles are now supported.
2024-10-09 18:27:36 +11:00
Dion Moult
11eb1c26f0
Fix #3120 . You can now assign styles to individual items.
2024-10-09 18:17:12 +11:00
Dion Moult
d09ab54869
Allow reloading of camera geometric representations
2024-10-09 12:26:03 +11:00
Dion Moult
aeb00e518b
Run black
2024-10-09 12:25:34 +11:00
Dion Moult
844be6bd1c
Fix #5231 . Remove workaround for missing model-offset in v0.8.
2024-10-09 12:24:25 +11:00
Dion Moult
4f6ca68195
Bump IOS
2024-10-09 11:24:30 +11:00
Bruno Perdigão
c33c0b7780
Fix snap to exclude objects that are in a hidden collection.
2024-10-08 18:37:36 -03:00
Bruno Perdigão
7137d95c63
Fix - Mixed snap now gives two snapping points options.
...
The function was only passing the closest option, but this is not always
the best option. It still defaults to the shortest, but now the user can
select the other option by cycling through snapping points with the "M"
key.
2024-10-08 18:13:24 -03:00
Bruno Perdigão
48784ba834
Polyline tool - user can now change the angle of the snap axis.
...
- Press "L" while the tool is active to lock axis to the current angle.
- Press "Shift" + "Mouse Wheel" up or down to adjust the angle.
If using with the measure tool it will only work if you have a plane method selected.
2024-10-08 18:13:24 -03:00
Bruno Perdigão
fa642e6203
Lower snap axis stickiness.
2024-10-08 18:13:24 -03:00
Bruno Perdigão
ee54b3a6f4
Increment snap now works with x, y, z axis snap.
2024-10-08 18:13:24 -03:00
Thomas Krijnen
e3223db059
More includes to make gcc happy
2024-10-08 21:04:11 +02:00
Thomas Krijnen
b34157e257
Allow returning nativeelement in create_shape()
2024-10-08 20:58:02 +02:00
Thomas Krijnen
bfe3601fd1
wkt-use-section option for svg-like occt section cuts instead of polyhedral topology
2024-10-08 20:57:27 +02:00
Kristoffer Andersen
cc6249d6cc
Add bcf conda-forge badge
2024-10-08 18:26:28 +02:00
Thomas Krijnen
4c2fc55cfe
Bring back some v0.7 logic for sweeps over continuous wires #5473
2024-10-08 15:44:51 +02:00
Thomas Krijnen
36a0a0f2dd
Work-around for tiny radii sweeps #5474
2024-10-08 14:53:56 +02:00
Dion Moult
89b1f9c2d7
Fix #5527 . Unlinking an object should never share its mesh data with IFC elements.
2024-10-08 22:47:22 +11:00
Dion Moult
3c51c6325c
Fix #5515 . Spaces are now special and have their own collection. Elements in a space don't go inside a space collection anymore.
...
There can be hundreds of spaces in a building, and generally we use collections for bulk selections (i.e. at the floor level) not for spaces.
2024-10-08 22:35:21 +11:00
Thomas Krijnen
fdf4749dd7
Missing include for OSX build
2024-10-08 09:19:29 +02:00
krande
742b3ca120
add ifdef for cgal 6
2024-10-08 09:12:04 +02:00
Dion Moult
c85eb79c50
Remove deprecated copy class operator
2024-10-08 17:48:53 +11:00
Dion Moult
1d6b0f781b
Fix #5533 . Duplicating objects now updates item ids for new item editing workflow.
2024-10-08 17:48:42 +11:00
Dion Moult
32899ebffb
Fix #5543 . Updating a representation reloads the representation.
2024-10-08 15:45:03 +11:00
Dion Moult
1b321f0747
Fix #5512 . Minor fix of console errors in workspace.
2024-10-08 14:32:48 +11:00
Bruno Perdigão
774791cf97
Polyline tool - increment snap now works for imperial units.
2024-10-07 22:28:03 -03:00
Bruno Perdigão
c5f27e908a
Polyline tool - increment snap implementation.
2024-10-07 22:28:03 -03:00
tim
0f4e4730e2
Progress on Selected Type Preview ( #5535 )
...
* Remove length from wall tool
No longer relevant with the new draw method
* Selected Type Preview and Launch Type Manager
Redesign of thumbnail preview
* Update to Type Manager
Moved Create new type to end of paginated loop
Added Predefined type label under thumbnail
* No Types Found
Modified to match Types Manager tiles
Quick Default icon added
* No Types Found
Modified to match Types Manager tiles
Quick Default icon added
* Description in thumbnail linked to value
---------
Co-authored-by: tim <tjrhyder@gmail.com >
2024-10-08 12:24:56 +11:00
Dion Moult
6fb4ce202e
Loading shapes now uses the selected geometry library
2024-10-08 12:16:56 +11:00
Dion Moult
f66d1bed73
Conveniently preselect object representation template if an object is selected
2024-10-08 12:16:32 +11:00
Dion Moult
af3fb78e1b
Fix #5526 . Fix bug where reloading a representation used by filtered / unloaded elements would fail.
2024-10-08 11:59:04 +11:00
Dion Moult
29d6d2ba97
Fix #5541 . Creating an object from a mesh now separates by loose parts to prevent unwanted vertex fusing.
2024-10-08 11:30:40 +11:00
Thomas Krijnen
a4226369bd
Update type literal
2024-10-07 20:48:58 +02:00
Thomas Krijnen
250fad696e
--unify-shapes setting
2024-10-07 20:47:01 +02:00
Thomas Krijnen
461e3d478a
Store lowest_z in WKT footprint generation
2024-10-07 20:45:52 +02:00
Thomas Krijnen
f3df7b8475
Rerun codegen
2024-10-07 20:43:19 +02:00
Thomas Krijnen
aa9b2d7428
populate_derived() upon instance creation, don't only rely on serialization 'hack' #5364
2024-10-07 20:41:34 +02:00
Bruno Perdigão
8e8136ffb6
Fix issue when using "C" to close polyline.
2024-10-07 14:15:42 -03:00
Bruno Perdigão
b595eb043e
Reverting a change in insert_polyline_point.
2024-10-07 14:07:34 -03:00
Bruno Perdigão
2e6ea4fffb
Small fix in polyline input ui decorator.
2024-10-07 14:07:34 -03:00
Bruno Perdigão
eef0eb5d43
Bug fix on polyline model decorator when there is no polyline yet.
2024-10-07 14:07:34 -03:00
Bruno Perdigão
9cad7269fd
Measure tool - allow for pan, orbit and zoom while tool is active.
2024-10-07 14:07:34 -03:00
Bruno Perdigão
0979c37ba8
Measure tool - center area text horizontally
2024-10-07 14:07:34 -03:00
Bruno Perdigão
f9fc563de9
Bug fixes for measure tool in area type with imperial units.
2024-10-07 14:07:34 -03:00
Bruno Perdigão
ad74d02165
Measure tool - Removed "Area" from the input UI.
...
Area is now shows as text decorator since be3354ece063c2c2abcb6f6904df7cd6865dee47
2024-10-07 14:07:34 -03:00
Bruno Perdigão
93457051da
Measure tool - show text decorator for polyline area and length.
2024-10-07 14:07:34 -03:00
Bruno Perdigão
ce1f1bc394
Bug fix in polyline wall after 95202364a86c8c56f54dde2873b703ac0cc548b4
2024-10-07 14:07:34 -03:00
Bruno Perdigão
0068023c6f
Refactor - moved tool/Snap functions that should be in tool/Polyline
2024-10-07 14:07:34 -03:00
Bruno Perdigão
2ea4fc6491
Polyline tool - properties refactor.
...
Better separation of insertion polyline and measurement polyline
2024-10-07 14:07:34 -03:00
Bruno Perdigão
b057f89459
Measure tool - single and area measurement now persist on screen.
...
Also, the measure polyline properties now stores the area and the total length that will be used by the decorator in later development.
2024-10-07 14:07:33 -03:00
Bruno Perdigão
1a8c11c715
Measure tool - added measurement type to each measurement properties.
2024-10-07 14:07:33 -03:00
Bruno Perdigão
cf2a156872
Small refactor. Variable renaming.
2024-10-07 14:07:33 -03:00
Bruno Perdigão
79a8fb1f7f
Single measure tool now show x,y and z formatted values.
2024-10-07 14:07:33 -03:00
Bruno Perdigão
d4848f26f6
Small refactor
2024-10-07 14:07:33 -03:00
Bruno Perdigão
9b5f20e1dc
Initial implementation of measure tool modes: single, polyline and area.
...
- Single: draws a single measurement that shows the lines and dimensions for x, y and z.
- Polyline: it's how it was already working
- Area: show the area value in the input panel and creates the polygon shape that represents the area. Only works for coplanar points.
The mode can be chosen by clicking the option icon in the workspace menu.
2024-10-07 14:07:33 -03:00
Dion Moult
864cc10b24
Fix #5529 . Escape now switches back from item mode to object mode.
2024-10-06 17:34:59 +11:00
Dion Moult
2e7e2d24e4
Fix #5536 . Trigger advanced mode by default on large models. Default to unlimited loading, but show warning.
...
This is a very common complaint: missing elements on large models. It seems as better default is to warn the user that the model is large, but give them the option to filter prior to loading the model.
2024-10-06 17:16:23 +11:00
Dion Moult
c10056611b
Bump IOS.
2024-10-06 16:13:26 +11:00
Thomas Krijnen
89a078bc50
Test case #5485
2024-10-04 19:12:18 +02:00
Thomas Krijnen
07fda60794
Return edges as planar-component boundaries in CGAL #5485
2024-10-04 19:11:02 +02:00
Andrej730
0935159c42
Restore IFC element menu removed in 23db38d
...
Example - https://i.imgur.com/1FRgYiQ.png
Restored it until we find some other place for it.
2024-10-04 18:45:40 +05:00
Andrej730
ca9681568c
Fix error editing curves based representations #5499
...
KeyError: 'bpy_struct[key]: key "ios_edges_item_ids" not found'
It's still not possible to edit curve representations, just fixing an error trying to import representation items.
2024-10-04 18:45:40 +05:00
Andrej730
13a6d5b64a
Materials UI - suggest MODEL_VIEW context for assigning material style by default
...
Probably makes more sense than just "Model".
2024-10-04 18:45:39 +05:00
Andrej730
8aa1b68d3e
Bonsai - fix issues with default ifcpatch recipe is not loading properly #5540
2024-10-04 18:45:39 +05:00
Andrej730
dc63e989d6
remove try except for ifcpatch import as it's not optional
2024-10-04 18:45:39 +05:00
Andrej730
0cef788a09
Fix console errors after c96c661 (failed to register selection_mode)
...
Apparently Blender is strict that items should be tuples, not lists. Interestingly enough, though it did failed to register, operator still was working fine.
Example error:
TypeError: EnumProperty(...): expected a tuple containing (identifier, name, description) and optionally an icon name and unique number
ValueError: bpy_struct "BIM_OT_select_container" registration error: 'selection_mode' EnumProperty could not register (see previous error)
2024-10-04 18:45:39 +05:00
Andrej730
38d450e111
Show templates based on selected IFC schema #5530
2024-10-04 18:45:39 +05:00
Andrej730
e5c83b1538
same as 3b71d0050 #5537
2024-10-04 18:45:39 +05:00
Andrej730
9177e19efa
Reset proposed property fields after adding custom property #5539
2024-10-04 18:45:38 +05:00
Andrej730
bf9d84e738
typing
2024-10-04 18:45:38 +05:00
Andrej730
2994f5c170
Add a warning if not all project elements were loaded #5536
...
Example - https://i.imgur.com/Tu3OOIm.png
2024-10-04 18:45:38 +05:00
Andrej730
3107fd91ee
Fix issues adding roof and railing representation #5534
...
Apparently after recent changes with how types are added, it's now required to add a representation for them explicitly instead of just marking them as edited
2024-10-04 18:45:38 +05:00
Andrej730
69781daa6b
Materials UI - update material styles data on expanding categories
...
otherwise style data was missing for materials that were previously hidden
2024-10-04 18:45:38 +05:00
Andrej730
e810dc76e0
Materials UI - support showing styles assigned with IfcPresentationStyleAssignment
2024-10-04 18:45:37 +05:00
Andrej730
cab3fd266d
Materials UI - display other styles assigned to material besides IfcSurfaceStyle
2024-10-04 18:45:37 +05:00
Andrej730
62aef09bc7
Fix UI issue when material styles were not reflecting active material #5447
...
It was reflecting active material but it was only updated when ifc UI data was refreshed (usually after some IFC operators), now it should be always up to date.
2024-10-04 18:45:37 +05:00
Andrej730
2626968a05
materials ui - reuse Material.get_active_material_item
2024-10-04 18:45:37 +05:00
Andrej730
0e6479b090
Show all available styles editing material styles #5525
...
Previously it would fail e.g. if IfcFillAreaStyle was already assigned to the material but UI was showing errors because enum items contained only surface styles.
2024-10-04 18:45:37 +05:00
Andrej730
7b0a792ff7
bim.merge_identical_objects to support merging IfcMaterials
2024-10-04 18:45:36 +05:00
Andrej730
944e9c45ac
black .
2024-10-04 18:45:36 +05:00
tim
99b1f5ec45
Tool header and side panel improvements ( #5500 )
...
* Conditions added to show Edit vs Create for each Tool
* Void conditions revised
Apply Voids now only show when number of selected objects ==2, and one of them is a void
* Conditions added to show create vs edit for each tool
example: to edit a wall -> the wall tool must be the active tool and a wall must be selected, to add a wall -> the wall tool must be the active tool and a wall must not be selected
* Extend wall to slab icons added
dark and light mode versions added
* Reset vertex icons added
dark and light mode version added
* Type Manager Preview added
---------
Co-authored-by: tim <tjrhyder@gmail.com >
Co-authored-by: Dion Moult <dion@thinkmoult.com >
2024-10-04 11:02:39 +10:00
Andrej730
3b71d00508
merge_identical_objects - temporarily replace get_info_2 with get_info
2024-10-03 18:37:56 +05:00
Andrej730
c3e4ebd996
bim.merge_identical_objects for merging identical styles
...
Button location - https://i.imgur.com/3O8gHUn.png
Could also be used as a temporary workaround for #5446
2024-10-03 17:15:34 +05:00
Andrej730
be9c9b2caa
fix missing assert statements
2024-10-03 17:15:34 +05:00
Andrej730
306a269061
bim.unlink_style - make it more safe
...
Even if user decide not to delete style during unlinking, we will create a material copy and relink style to it, so it will be safe to assume that each surface style is always linked to blender material.
2024-10-03 17:15:34 +05:00
Andrej730
392b458563
ifcopenshell.util.element.replace_element
2024-10-03 17:15:34 +05:00
Andrej730
8ae951d27a
get_info_2 to support excluding identifier
2024-10-03 17:15:33 +05:00
Andrej730
770e25dbc2
typing
2024-10-03 17:15:33 +05:00
Thomas Krijnen
2c08cff67b
Make sure $ chars in TTL are only enclosed in <IRI> not shortened postfixes"
2024-10-03 10:30:53 +02:00
Thomas Krijnen
83c40c7fb4
Don't try to install directories as files (some change in recent cmake?)
2024-10-03 10:30:53 +02:00
Thomas Krijnen
3b9c1d88c8
Handle missing placement location gracefully #5528
2024-10-03 10:30:53 +02:00
Tyler Kvochick
040aec3e52
Derive docker tags from git refs
2024-10-02 17:28:12 +02:00
Thomas Krijnen
8f443a79f3
Merge pull request #5184 from csritter/v0.8.0
...
Adding --surface-colour in conversion settings to force the use of surface color instead of diffuse color. Issue #5075
2024-10-02 17:24:34 +02:00
Andrej730
3a9598a9d9
bonsai - bim.append_library_element option to skip reusing materials by name
...
Example - https://imgur.com/PsAPugJ
2024-10-02 18:33:31 +05:00
Andrej730
104b6f5564
append_asset option to avoid assuming unique names for assets #5391
2024-10-02 18:33:31 +05:00
smr02
d5fddd5f1b
https://github.com/IfcOpenShell/IfcOpenShell/issues/5511#issuecomment-2388073735
2024-10-02 15:28:58 +02:00
Thomas Krijnen
99ae69f1e4
Don't estimate normal from collinear edges in TTL serializer
2024-10-02 11:12:23 +02:00
Thomas Krijnen
b700c5e448
Don't escape $ in TTL output
2024-10-02 11:12:23 +02:00
Andrej730
2a9301ead2
project.append_asset - slight optimization for existing elements search
2024-10-01 18:08:03 +05:00
Andrej730
315d3c6437
ifcopenshell.file.to_string
2024-10-01 18:08:03 +05:00
Andrej730
35f53232b6
typing
2024-10-01 18:08:03 +05:00
Gorgious56
3978226b65
#5514 : Add information as to where to unlock elements in the error tooltip when trying to edit, delelete or move a locked object. Also fix active object / selection discrepancies
2024-10-01 14:14:48 +02:00
Andrej730
c3a6d28927
avoid writing to ifc loading ui elements
2024-10-01 16:50:17 +05:00
Andrej730
0ca3837fc2
update object name changing name from spatial manager #5449
2024-10-01 16:50:13 +05:00
Gorgious56
c96c661394
By default the "Select container" button in the spatial decomposition panel clears current selection before selecting the container. Shift + Click adds the container to selection, ALT + Click removes the container from selection. Added tooltip to the button for keypresses.
2024-10-01 13:38:20 +02:00
Andrej730
a4ac71f9f7
Replace freestyle extension warning with poll message #5472
2024-10-01 16:23:13 +05:00
Andrej730
f63a7d420e
style.remove_style to handle IfcFillAreaStyles
2024-10-01 15:38:46 +05:00
Andrej730
19f1c87437
style.remove_style to handle IfcFillAreaStyleHatching
2024-10-01 15:38:46 +05:00
Andrej730
4b39631b98
get_element_by_style to support IfcFillAreaStyleTiles
2024-10-01 15:38:46 +05:00
Andrej730
e040dc4562
get_elements_by_style to support curve styles used in IfcFillAreaStyleHatching
2024-10-01 15:38:45 +05:00
Andrej730
55726b3d50
bonsai - fix breaking ui after style is removed
...
not sure when this one occurred but ui was breaking since ui blender items were still referring to the deleted ids
2024-10-01 15:38:45 +05:00
Andrej730
f4165d4149
bonsai - fix error removing non-linked styles
...
including non-ifcsurfacestyle ifcpresentationstyles
2024-10-01 15:38:45 +05:00
Andrej730
b7c390585b
ios - fix error removing other IfcPresentationStyles
...
besides IfcSurfaceStyle
2024-10-01 15:38:45 +05:00
Andrej730
7133b01b76
Count styles based on the current stype type #5462
...
Previously it was showing number of all IfcPresentationStyles
2024-10-01 15:38:45 +05:00
Andrej730
616a8882d9
bim.load_style - avoid writing to ifc every time
2024-10-01 15:38:45 +05:00
Andrej730
e6e6bd841c
project.operator - use pathlib
2024-10-01 15:38:45 +05:00
Andrej730
45ae7634a8
select linked model object when it's loaded
2024-10-01 15:38:45 +05:00
Andrej730
b67be01590
Operator to select link handle
...
Example - https://imgchest.com/p/md7oxbze97p
2024-10-01 15:38:44 +05:00
Andrej730
06a2c5bf0b
Fix linked model decorator not moving for moved linked models ( be68a8fdde)
2024-10-01 15:38:44 +05:00
Dion Moult
79b1388e44
Remove Shift-P hotkey
2024-10-01 19:11:40 +10:00
Dion Moult
53765222d6
See #4915 . Experimental code for polyhedron without holes
2024-10-01 19:11:08 +10:00
Bruno Perdigão
665afc0375
Wall preview decorator now show tris.
2024-09-30 18:25:09 -03:00
Bruno Perdigão
5129d2016e
Fix rebase conflicts
2024-09-30 13:15:19 -03:00
Andrej730
5d83c49fe0
fix saving clash results to bcf #5377
2024-09-30 16:02:52 +05:00
Andrej730
3ad58aba7a
ifcclash typing
2024-09-30 16:02:52 +05:00
Andrej730
9131804e4e
black .
2024-09-30 16:02:52 +05:00
Thomas Krijnen
6e2e01b460
Fix incomplete swept surface mapping #5484
2024-09-30 12:30:34 +02:00
Thomas Krijnen
5d1dee4480
Apply transformation to swept surfaces in occt advanced brep impl #5484
2024-09-30 12:29:14 +02:00
Thomas Krijnen
62f696da51
Don't handle bspline-edges on planar faces in cgal-kernel #5484
2024-09-30 12:28:28 +02:00
Dion Moult
af7bdf6b9f
Deprecate type_class in favour of new simpler type manager workflow
2024-09-30 14:04:03 +10:00
Thomas Krijnen
2c22421889
Don't consume token on invalid entity typename #5504
2024-09-29 19:15:29 +02:00
Dion Moult
8a0e87b8f8
Start cleaning up type manager to serve its new purpose as a fancy dropdown
2024-09-29 22:39:21 +10:00
Dion Moult
1bcc7199f6
Redesign BIM tool to have mutually exclusive add/edit modes.
2024-09-29 21:20:17 +10:00
Dion Moult
275d615d42
Shift-A now triggers the wall polyline tool for all LAYER2 elements
2024-09-29 18:11:08 +10:00
Dion Moult
905044f0d7
Shift-A in BIM tools now lets you pick a point interactively. No more 3D cursor requirement.
...
Still incomplete, but the goal is to not require a "huh?" moment for new users who have no idea what a 3D cursor is.
2024-09-29 17:11:32 +10:00
Thomas Krijnen
e2ae2a4a89
Fix negative modelo #5509
2024-09-28 19:44:19 +02:00
Richard Brice
abe3d7e5db
Fixes problem normalizing IfcDirection direction ratios
2024-09-28 06:19:41 -07:00
Thomas Krijnen
dd01cb0e51
BaseUri setting for TTL+WKT
2024-09-28 14:47:08 +02:00
Daniel Bo Olesen
2eecda17e4
Minor updates
...
Added a debug and run script to the documentation section. Added a tip and clarifies how to roll back to a previous version, when running unstable release.
2024-09-28 21:48:56 +10:00
Daniel Bo Olesen
c45b4372a8
Update writing_docs.rst
...
Some additions on how to get the local server up and running
2024-09-28 21:48:56 +10:00
Dion Moult
5bb40111c1
Pop up add menu in item mode
2024-09-28 21:22:57 +10:00
Dion Moult
faa94eb636
Fix #5466 . Support duplicating representation items
2024-09-28 19:39:29 +10:00
Dion Moult
2a6616707c
Remove random debug print statements
2024-09-28 17:45:32 +10:00
Dion Moult
d1c430cd4d
Show clipping plane in front to make it easy to select
2024-09-28 17:35:06 +10:00
Dion Moult
a5e6539ddf
Support joining representation items
2024-09-28 17:35:06 +10:00
Dion Moult
7bc4b5100b
Support separating representation items
2024-09-28 17:35:06 +10:00
Bruno Perdigão
8d08d358af
Measure tool persists on screen and can be snapped.
...
The user has an option to clean previous measurements polylines by pressing "E" while using the measure tool.
2024-09-27 16:48:28 -03:00
Thomas Krijnen
314534436d
Add .ttl + Well Known Text geometry serializer
2024-09-27 16:32:47 +02:00
Andrej730
be68a8fdde
Support for moving/rotating/scaling for linked models
...
Example - https://imgchest.com/p/lqye6da2z4d
2024-09-27 19:06:31 +05:00
Andrej730
400ebf2efb
bim.append_inspected_linked_element to ensure linked file schema is compatible
2024-09-27 19:06:31 +05:00
Andrej730
0dff19ba6a
Project library dropdown - show only libraries compatible with the current schema
...
To prevent errors trying to append elements from the wrong schema library
2024-09-27 19:06:31 +05:00
Andrej730
24a6ed0e5c
Show an error if library file schema is not compatible with the current file
...
Example - https://i.imgur.com/t1gxBJ4.png ("Schema of library file (IFC4X3_ADD2) is not compatible with the current IFC file (IFC4).")
2024-09-27 19:06:31 +05:00
Andrej730
63ffa1aadb
Add upgrade to ifc4/ifc4x3 button to libraries file browser
...
Example - https://i.imgur.com/cTdwCvt.png
2024-09-27 19:06:31 +05:00
Andrej730
f7bf440848
AbstractKernel::dispatch_curve_creation - use static cast
...
Similar to 93c4749
2024-09-27 19:06:31 +05:00
Dion Moult
82fd49e4c4
Fix bug when tabbing into empties
2024-09-27 23:14:22 +10:00
Dion Moult
4261fdbed6
Rewrite coordinate offset to use np.array not Vector() for precision
2024-09-27 23:09:00 +10:00
Andrej730
9f02737a2e
Fix segfault trying to create IfcSweptDiskSolid with invalid curve #5474
...
In my case it was IfcIndexedPolyCurve with just 1 vertex. Though kernel->convert does return a boolean value to indicate if conversion was successful, we never used it - so it failed silently leading to segfault later on.
Now we also stop processing those polycurves during mapping stage but checking kernel->convert result still might be useful in some other cases.
2024-09-27 17:00:33 +05:00
Andrej730
fe3b66c044
Stop processing IfcIndexedPolyCurve with < 2 verts at mapping stage #5474
...
as they're invalid and would't be able to create a curve
2024-09-27 17:00:33 +05:00
Andrej730
14cea7453b
Skip failed to load IfcSweptDiskSolid shapes
...
Noticed in the file attached in #5474 (note that it's not the issue that's causing the segfault), it was failing due IFCSWEPTDISKSOLID's IFCINDEXEDPOLYCURVE having just 1 point, resulting in something like '[Error] [ 14:07:00] No segment successfully converted: 80=IfcIndexedPolyCurve(79,$)'.
Not sure if this kind of polyline is considered valid in IFC but it doesn't trigger any validation errors, so I guess it shouldn't stop IFC project from loading in BBIM.
2024-09-27 17:00:33 +05:00
Andrej730
cfa2dc5d97
Contexts UI - import Precision as string due problems with Blender UI
...
Btw this is where you can edit model geometry precision - https://i.imgur.com/CLln0oK.png
Related Blender issue - https://projects.blender.org/blender/blender/issues/128238
2024-09-27 17:00:33 +05:00
Andrej730
123d023bb3
context.operator - remove unnecessary ifc operators
2024-09-27 17:00:33 +05:00
Andrej730
8ff94d3f61
context.data - skip passing unnecessary attributes
2024-09-27 17:00:33 +05:00
Andrej730
3b64350a3f
bim.create_shape_from_step_id to include ifc class and id to object name
2024-09-27 17:00:33 +05:00
Andrej730
78302d1583
typing
2024-09-27 17:00:33 +05:00
Dion Moult
d93ffb1fe6
See #5491 . Clean up orphaned meshes when editing.
2024-09-27 21:59:42 +10:00
Bruno Postle
ceeba53c18
Fix linux Associate Bonsai with *.ifc files #5494
...
The package configuration only included files with extensions, so the
`bonsai` wrapper script was not packaged in the wheel
2024-09-26 22:23:38 +01:00
Andrej730
ecd147675e
Ooops, revert wip commit c80c52c248 commited by accident
2024-09-26 22:02:42 +05:00
Andrej730
1cf7f65902
Hide non-simple property types to avoid breaking UI #5496
...
Property types that are now skipped (at least in IFC4):
<type IfcArcIndex: <list [3:3] of <type IfcPositiveInteger: <type IfcInteger: <integer>>>>> ('list', 'integer')
<type IfcBinary: <binary>> binary
<type IfcComplexNumber: <array [1:2] of <real>>> ('array', 'float')
<type IfcCompoundPlaneAngleMeasure: <list [3:4] of <integer>>> ('list', 'integer')
<type IfcLineIndex: <list [2:?] of <type IfcPositiveInteger: <type IfcInteger: <integer>>>>> ('list', 'integer')
<type IfcPropertySetDefinitionSet: <set [1:?] of <entity IfcPropertySetDefinition>>> ('set', 'entity')
2024-09-26 18:40:52 +05:00
Andrej730
7d8ef3ffd0
Fix invalid IfcRevolvedAreaSolid representations with angle <360 deg
...
It was always assuming angle is 360 deg
2024-09-26 18:40:52 +05:00
Andrej730
ca5f083481
Fix error trying to tab into IfcRevolvedAreaSolid
...
by temporary not recognizing reprs with IfcRevolvedAreaSolid as a profile usage
2024-09-26 18:40:52 +05:00
Andrej730
a35304f1d5
lock_object to also lock scales and additional rotations
...
to indicate that they won't have an effect (or might break things)
2024-09-26 18:40:52 +05:00
Andrej730
c80c52c248
Allow editing poly curve representation items
2024-09-26 18:40:52 +05:00
Andrej730
dd516fb873
Support moving IfcConic representation items
...
Example - https://imgur.com/a/UDWxXWX
2024-09-26 18:40:52 +05:00
Andrej730
f8680503ef
Add default values for IfcEllipseProfileDef
2024-09-26 18:40:51 +05:00
Andrej730
23389dcac0
Update ellipse profile just for consistency with 11deb95
2024-09-26 18:40:51 +05:00
Andrej730
8814d3a22b
Lock all representation items that are not movable
...
Otherwise it was confusing that user can move item but when they exit item mode position was lost
2024-09-26 18:40:51 +05:00
Andrej730
340e8515f5
Fix error switching mode for multiple objects
2024-09-26 18:40:51 +05:00
Andrej730
22b9a8804d
notes for loading indexed maps
2024-09-26 18:40:51 +05:00
Andrej730
341b97bce2
typing
2024-09-26 18:40:51 +05:00
Andrej730
24f66bbcb4
black .
2024-09-26 18:40:51 +05:00
Dion Moult
a273c87e41
Fix #5416 . Optimise item decorator and make decoration more subtle to make it easier to see the mesh.
2024-09-26 23:30:12 +10:00
Dion Moult
b01471aa55
See #5491 . Don't show items in front.
2024-09-26 23:28:47 +10:00
Dion Moult
ebb7f0c8a9
Less in-your-face grid decorations that are easily selectable due to show in front
2024-09-26 23:21:44 +10:00
Ryan Schultz
d581174513
Fix #5493 : Bonsai, error when using , in drawing names and clicking on the drawing in the sheet part of UI.
2024-09-25 18:36:39 -05:00
Bruno Perdigão
41d5c391e1
Polyline wall - added top and bottom division lines to product preview.
2024-09-25 16:38:33 -03:00
csritter
a8157e7dd6
Merge branch 'v0.8.0' into v0.8.0
2024-09-25 11:20:47 -03:00
Andrej730
4e33569851
ifc join to support joining 3d polyline curves
2024-09-25 19:09:15 +05:00
Andrej730
761795ccbf
ifc join to show error message if joining is not supported
...
Example - https://i.imgur.com/5vsmJN8.png
2024-09-25 19:09:15 +05:00
Andrej730
95e9b8aeef
Import representation items for curve representations too
...
https://i.imgur.com/TeITxa0.png
2024-09-25 19:09:14 +05:00
Andrej730
dd9de98290
Store edges representation item ids in Triangulation
2024-09-25 19:09:14 +05:00
Andrej730
aad66f94a3
rename addEdge overload to registerEdgeCount
...
So it won't be confused with addEdge that actually does add an edge to edges_.
2024-09-25 19:09:14 +05:00
Andrej730
6ac40b4ab3
typing
2024-09-25 19:09:14 +05:00
Dion Moult
fce7b4416e
Forgot to handle cases where no object is selected when adding a new element
2024-09-25 23:56:18 +10:00
Dion Moult
42f32e3418
Fix #5460 . Assigning a class now uses the new add element mode internally.
2024-09-25 23:48:44 +10:00
Dion Moult
47581f2316
Hooray! New add element means we no longer do this silly "add cube" and delete when adding occurrences.
2024-09-25 23:47:18 +10:00
Dion Moult
c68c621400
Loading and saving extrusion items now take into account georef cartesian point offsets
2024-09-25 23:03:06 +10:00
Andrej730
61151442cf
Merge branch 'bonsai-bump-macos' into v0.8.0
2024-09-25 14:00:17 +05:00
Andrej730
7b36f93973
remove debug logging
2024-09-25 13:59:55 +05:00
Andrej730
5952ce8ed3
disable_item_mode - to set previously edited object as active
...
It seems very natural that after exiting item mode the edited item should become active (similar to how it works in edit mode).
2024-09-25 13:59:55 +05:00
Andrej730
3c309bbac8
load_indexed_colour_map - to support loading colors for rep items
...
Enter item mode for simple faceset cube was failing because this wasn't supported.
2024-09-25 13:59:55 +05:00
Andrej730
3e3b133c7b
black .
2024-09-25 13:59:55 +05:00
Andrej730
0af2ab53a0
bonsai makefile update regex to keep track of x86_64 version automatically
2024-09-25 13:45:37 +05:00
Andrej730
700a453501
fix breaking bonsai builds - bump macos to 10.13 for python 3.12
...
Recently released Python 3.12.6 dropped support for Mac OS 10.9-10.12 - https://www.python.org/downloads/release/python-3126/
And Python 3.12.6 is the one that's used by compiled builds from now - in our case it was fonttools (used by ezdxf) that compiled binaries and it's using cibuildwheel which is also started using Python 3.12.6 as it's released.
2024-09-25 13:45:32 +05:00
Jason Hilton
e45b41c04b
fix: compile errors qt app
...
I was able to hardcode load an ifc file, by uncommenting the hard
coded parse ifcfile, but I was unable to open and load files with the
qt menu.
2024-09-25 10:22:14 +02:00
Dion Moult
86367e9c1f
Loading and saving meshlike items now take into account georef cartesian point offsets
2024-09-25 17:46:59 +10:00
Dion Moult
9af9120dff
Fix bug where switching representations didn't take into account georef cartesian point offsets
2024-09-25 17:46:15 +10:00
Dion Moult
dc5e3d86b4
Lazy optimisation to prioritise styledbyitem instead of indexed maps. Allow blank data_index in case we have multiple rep items.
2024-09-25 13:00:14 +10:00
Daniel Bo Olesen
4472578915
Changed tools tips for commands.
2024-09-25 11:59:01 +10:00
Dion Moult
9ede6a693d
See #5475 . Fix quoting in dev script and default to Github repo.
2024-09-25 11:26:43 +10:00
Dion Moult
7584a40219
Fix #5483 . Units is optional when loading.
2024-09-25 11:13:09 +10:00
Dion Moult
1d4f5de4a0
Fix #5475 . Quote paths to accommodate spaces in dev setup.
2024-09-25 10:39:12 +10:00
dylcos
fa92d3bd59
Update code_examples.rst
...
Replaced "product=wall" with "products=[wall]" in:
# Place our wall in the ground floor
ifcopenshell.api.spatial.assign_container(model, relating_structure=storey, products=[wall])
As code example fails otherwise
2024-09-25 09:36:25 +10:00
Bruno Perdigão
d868eeb77d
Updates on polyline decorator to match standard colors.
2024-09-24 17:30:34 -03:00
Bruno Perdigão
083a1e4074
Small fix in polyline decorator.
2024-09-24 13:55:14 -03:00
Bruno Perdigão
ef5dc58b91
Fix some cases where wall joining were not working after they were created by polyline tool.
2024-09-24 13:47:21 -03:00
Bruno Perdigão
c4232e7407
small fix on 36b4225b1
2024-09-24 11:40:47 -03:00
Andrej730
209c0fef57
restore lost code after a1d99b5
2024-09-24 19:30:17 +05:00
Andrej730
d4bc34dea7
ifc2sql - remove debug print statements
2024-09-24 19:30:08 +05:00
Andrej730
0ce92587bf
ifc2sql - add test
2024-09-24 19:30:08 +05:00
Andrej730
56de208470
ifcopenshell.sql - add simple test
2024-09-24 19:30:08 +05:00
Andrej730
266416226b
ifcopenshell.sql - repr for entities
2024-09-24 19:30:08 +05:00
Andrej730
810f42ea24
ifc2sql - clarify how output works in docs, add a suffix to temp file
2024-09-24 19:30:08 +05:00
Andrej730
21dd5054e6
ifcopenshell.sql - fix error in by_id method
...
it was fetching some random row from id_map instead of using ifc_id filter
2024-09-24 19:30:07 +05:00
Andrej730
08e221fe93
ifcopenshell.sql - garbage collection errors (same as fe1dff0191)
2024-09-24 19:30:07 +05:00
Andrej730
c7e97d06bd
ifcopenshell.sql - fix error opening files similar to #5457
2024-09-24 19:30:07 +05:00
Andrej730
46cc3a449a
ifcopenshell.sql - handle non existing files
...
previously it would create an empty database and give a confusing error "AssertionError: SQLite schema not supported."
2024-09-24 19:30:07 +05:00
Andrej730
9e86d83616
ifcopenshell.sql - typing
2024-09-24 19:30:07 +05:00
Andrej730
2829b7daf6
ifcopenshell.stream - remove unrelated code from ifcopenshell.sql
2024-09-24 19:30:07 +05:00
Andrej730
86ec618327
ifcopenshell.stream - add simple test
2024-09-24 19:30:07 +05:00
Andrej730
9a23daf7b3
stream - add support of crlf files
2024-09-24 19:30:07 +05:00
Andrej730
4e3d6f1773
typing
2024-09-24 19:30:07 +05:00
Andrej730
7045fba9c0
black .
2024-09-24 19:30:00 +05:00
Bruno Perdigão
36b4225b18
Warning messages for prohibit cases when inserting polyline points
2024-09-24 10:55:59 -03:00
Bruno Perdigão
b05e6cf71a
Small fix
2024-09-24 10:55:54 -03:00
myoualid
7692b910f4
loading multiple cost schedules in the web ui is now more responsive, clean up and organise css code #5369
2024-09-24 12:13:18 +01:00
Thomas Krijnen
0c70d4c828
Manually detect facet boundary intersections before triangulation #5470
2024-09-24 13:09:30 +02:00
Thomas Krijnen
11deb955f8
Fix ellipse major < minor workaround #5470
2024-09-24 13:09:30 +02:00
Dion Moult
036754ea20
Bump IOS to OCC 7.8.1
2024-09-24 18:50:07 +10:00
Thomas Krijnen
2557fcf628
Do let cgal handle planar adv brep #4915
2024-09-24 08:54:52 +02:00
Dion Moult
4bee80edc5
Optimise array setup during load
2024-09-24 15:31:55 +10:00
Dion Moult
d1c4a0a415
Check walls first for false origin guessing for speed, checking one object seems to be enough
2024-09-24 15:31:37 +10:00
Dion Moult
f92a02cfcb
Fix regression in speed in collection assignment
...
As hinted in the TODO note for linking collections safely, try-catch is actually much faster. This brings it to 10% faster than 0.7 speeds. Previously the regression made it 10x slower.
2024-09-24 14:54:25 +10:00
Dion Moult
ff5c402750
Optimisation for not iterating through things with no representations
...
Iterator initialise can take a few seconds on large models even though you're just doing a few elements which have no representations.
2024-09-24 14:54:25 +10:00
Bruno Perdigão
2151035afd
Small fix in Raycast function ray_cast_by_proximity.
2024-09-23 22:46:36 -03:00
Bruno Perdigão
cc11c43240
Fix raycast to detect objects with partial visibility in the scene.
2024-09-23 22:37:37 -03:00
Bruno Perdigão
7339325cc9
Fix #5464
2024-09-23 22:25:28 -03:00
Bruno Perdigão
3c2a0c9bf3
Fixed issue with polyline inserting point at world origin (0, 0, 0).
2024-09-23 17:13:57 -03:00
Bruno Perdigão
98d767988e
Added support to snap on empty objects.
2024-09-23 17:04:42 -03:00
myoualid
7b2a30e5b7
web-ui: fix classifications file navigation
2024-09-23 20:41:26 +01:00
myoualid
455012de4c
cost web ui:
...
- add "Linked rate" column,
- assign a cost rate to multiple cost items by selecting linked rate cells & clicking the "assign" button on the chosen cost rate
#5369
2024-09-23 20:19:06 +01:00
Andrej730
ab8a6b80e4
debug module - remove unnecessary ifc operators
2024-09-23 19:33:36 +05:00
Andrej730
acd1b165f8
bim.create_shape_from_step_id to support different geometric libraries
2024-09-23 19:33:29 +05:00
Andrej730
fe1dff0191
ifcopenshell.stream - fix garbage collection errors
...
Mentioined in #5457
Errors such as:
Exception ignored in: <function file.__del__ at 0x7f4cfcc9f920>
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/ifcopenshell/file.py", line 284, in __del__
del file_dict[self.file_pointer()]
^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/ifcopenshell/file.py", line 444, in __getattr__
return getattr(self.wrapped_data, attr)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'file_pointer'
2024-09-23 19:33:28 +05:00
Andrej730
08bba92b2e
fix opening ifc files with streaming #5457
2024-09-23 19:33:28 +05:00
Andrej730
7e6be53237
Improve error messages for shapes failed to process
...
Example error messages now:
RuntimeError: Failed to process shape. Product: #3855=IfcSite('3ZGD7y6S5209$mGLi_sPll',#20,'Surface:411452',$,$,#3854,#3850,$,.ELEMENT.,(42,12,46,799999),(-71,-2,0,-599999),0.,$,$), representation: #3849=IfcShapeRepresentation(#93,'FootPrint','Curve2D',(#3841,#31427,#31471,#45600,#45628))
RuntimeError: Failed to process shape. Instance: #3841=IfcPolyline((#3800,#3801,#3802,#3803,#3804,#3805,#3806,#3807,#3808,#3809,#3810,#3811,#3812,#3813,#3814,#3815,#3816,#3817,#3818,#3819,#3820,#3821,#3822,#3823,#3824,#3825,#3826,#3827,#3828,#3829,#3830,#3831,#3832,#3833,#3834,#3835,#3836,#3837,#3838,#3839,#3840,#3800))
2024-09-23 19:33:28 +05:00
Andrej730
c6c9f400d3
BBIM Parametric psets - show warning when user edits them manually
...
as they are not intended to be edited manually but through the special ui
example - https://i.imgur.com/nsuy0I0.png
2024-09-23 19:33:28 +05:00
Andrej730
2b35e5fb91
Make parametric doors/windows available for ifc2x3
2024-09-23 19:33:28 +05:00
Andrej730
e7dd186349
Fix roof tooltip in templates
2024-09-23 19:33:27 +05:00
Andrej730
0091f5c09b
Simplify spatial elements sorting
2024-09-23 19:33:27 +05:00
Andrej730
c33e2fc689
Fix #5320
2024-09-23 19:33:27 +05:00
Andrej730
df055cefd4
typing
2024-09-23 19:33:27 +05:00
Andrej730
65f9a745a3
black .
2024-09-23 19:33:27 +05:00
Thomas Krijnen
a51ed6e6b3
Fixes for using hybrid kernel on non-products #5443
2024-09-23 16:18:00 +02:00
Gorgious56
aaf5fde92e
Fix error when the "Add Parametric Window" button is drawn
2024-09-23 16:03:34 +02:00
Thomas Krijnen
0389f1e984
Make cgal implementation a little bit less confident #5453
2024-09-23 16:03:10 +02:00
Dion Moult
84ceb11584
Minor fix
2024-09-23 23:55:15 +10:00
Dion Moult
0426c8e115
Adding an occurrence of a non-geometric type now lets you choose the type of geometry to add
2024-09-23 23:49:34 +10:00
Thomas Krijnen
a9ca4e7366
Mark status when parsing is terminated
2024-09-23 15:24:28 +02:00
Thomas Krijnen
e4d1118124
Manually write out if-statements instead of visit with if-constexpr #5444
2024-09-23 15:10:37 +02:00
Gorgious56
f2efa53fdf
Fix #5456 : Unbound variable error when no snap decorator is drawn
2024-09-23 11:34:35 +02:00
Dion Moult
23db38d0e9
Finally, a way to actually add an IFC element directly
...
Previously, the way to add an IFC element would be to 1) create a blender element then assign or 2) activate bim tool, launch type manager, click create type, fill out field, or 3) using various menus for parametric stuff like stairs. This is now the new proposed way to do things and everything will consolidate to here - and it allows you to directly create non-mesh geometry immediately too!
2024-09-23 18:21:44 +10:00
Dion Moult
194acb078c
See #3707 . See #5445 . Type now launches type manager, and type manager icons are clickable.
...
Previously you could either use the dropdown, or launch the type manager, but now they are one and the same, and more inuitive to click icons.
2024-09-23 18:18:44 +10:00
Dion Moult
c30ac2d061
Slightly more accurate loading time to include initialisation time
2024-09-23 18:14:52 +10:00
tim
621393e67a
Toggle openings typo
2024-09-23 18:13:24 +10:00
tim
2386b935aa
Toggle openings icons
...
renamed png files to match operator name
2024-09-23 18:13:24 +10:00
tim
0071fa515a
Apply void icons
...
This is a temporary fix
2024-09-23 18:13:24 +10:00
Thomas Krijnen
154059126c
Update build-all.py - reset --hard before checkout
2024-09-23 09:16:24 +02:00
Thomas Krijnen
4c048e4695
Update face.cpp - snail artefact on 7.8 as well #4924
2024-09-23 09:12:10 +02:00
Thomas Krijnen
4ce3413cdf
Update build-all.py - fetch before checkout
2024-09-23 06:52:49 +02:00
myoualid
33d8ecdc8b
smart copy paste option for cost schedules in web ui - #5369
2024-09-23 03:21:15 +01:00
myoualid
193daff617
web-ui: enable assigning parametric quantities from queries #5369
2024-09-23 02:21:15 +01:00
myoualid
9f542c30b3
cost module web ui:
...
- add setting options to hide/show columns
- Cost classification column
- New Cost Classification Form to display active classification library, add/delete classification references
2024-09-22 20:00:09 +01:00
Manu Varkey
a053472558
Fixes #5320
2024-09-22 22:19:49 +10:00
Dion Moult
14fe3e6150
Rewrite mode switching from object to item to edit modes
2024-09-22 22:17:07 +10:00
mrfcoelho
df494a3def
Update create_model.rst
...
Fix minor typo
2024-09-22 08:32:20 +10:00
mrfcoelho
ff7c7932e1
Update installation.rst
...
Fix broken link
2024-09-22 08:32:06 +10:00
Dion Moult
9ea44f0a89
You can now add new swept area solid items
2024-09-21 21:27:17 +10:00
Dion Moult
ce010f1e56
You can now add new mesh representation items
2024-09-21 16:34:41 +10:00
Dion Moult
2a8d43c42c
Basic editing of item attributes implemented
2024-09-21 14:27:17 +10:00
tim
ef412c36c6
Cancel and Apply buttons ( #5435 )
...
* Cancel button added back in, Green apply replaced with CHECKMARK
* 2-point arc icon added
---------
Co-authored-by: tim <tjrhyder@gmail.com >
2024-09-21 13:48:33 +10:00
myoualid
8c4ab5bf03
enable displaying schedule of rates - web ui ref #5369
2024-09-21 00:16:11 +01:00
Thomas Krijnen
e0095cd446
occt 7.8.1 #4924
2024-09-20 20:49:22 +02:00
Gorgious56
ea3f5cea1f
Fix parametric stairs not appearing in the type manager templates
2024-09-20 20:26:03 +02:00
Andrej730
a3c0523fbd
Fix #5432
2024-09-20 22:56:59 +05:00
Andrej730
c819368445
code_style.rst - some notes on black formatting
2024-09-20 22:11:15 +05:00
Andrej730
287f08dc7b
bim.print_unused_elements_stats to ignore IfcIndexedTextureMap
2024-09-20 22:03:20 +05:00
Andrej730
5ce9d21dff
Purging styles to also purge associated blender materials #3914
2024-09-20 22:03:19 +05:00
Andrej730
d4df21c4be
ifcopenshell.util.shape.get_normals
2024-09-20 22:03:19 +05:00
Andrej730
95e76c3ab9
bsdd classes - typing for not required attributes
2024-09-20 22:03:19 +05:00
Andrej730
18476ec7f3
bsdd - update classes according to the latest API
...
Also added yml_to_classes.py script that can extract the classes automatically
2024-09-20 22:03:19 +05:00
Andrej730
aeeae7365f
load bsdd classes recursively if query fetches more than 100 items
...
previously it would just hit the limit 100 and stop
2024-09-20 22:03:19 +05:00
Andrej730
9953ce1b39
typing
2024-09-20 22:03:19 +05:00
Andrej730
d7adec3d54
black .
2024-09-20 22:03:19 +05:00
myoualid
e0e9892ff0
cost module web-ui:
...
- remove Blender operators in favor of ifc.api functions
- replace BonsaiBIM Data class dependency with new ifc5D2json script
- enable viewing multiple cost schedules
- add Identifaction column
ref #5369
2024-09-20 16:26:40 +01:00
tim
e8f66abf17
New and updated icons for CAD and BIM workspace
...
* Updates to some icons, new icons added for CAD tools, and new layout for CAD tools
* updates to icons
* WIP changes to BIM Tool UI
* Separated BimToolUI, added Draw wall icon
Separated BimToolUI into AddElementUI and ModifySelectedUI classes, added Draw wall icon
* Voids back in UI
* WIP UI tools and icons
partial support for draw wall tool added
* 40d95c294 WIP UI tools and icons
Minor tweaks
* WIP on profile-axis-ui
* WIP on profile-axis-ui
* Added Merge, Split, Rotate, and Flip back into wall edit tools
* Separators added
* Restore commented out code in CAD workspace.py
---------
Co-authored-by: tim <tjrhyder@gmail.com >
Co-authored-by: Dion Moult <dion@thinkmoult.com >
2024-09-20 22:16:40 +10:00
mrfcoelho
560983c6b8
Update interface.rst
...
Add minor tip to be able to see all the workspaces when the screen size is small.
2024-09-20 21:55:06 +10:00
Gorgious56
07291022b4
Fix purging types in the type manager not working. The purge button is now in a menu for a cleaner interface and avoiding accidentally clicking on it when opening the type manager.
2024-09-20 12:09:55 +02:00
Andrej730
6d94871683
Attribute.data_type -> EnumProperty (+typing)
2024-09-20 13:17:41 +05:00
Andrej730
774db8e997
sort wheel files list in manifest
2024-09-20 13:17:27 +05:00
Manu Varkey
31d49a7bbc
Update drawing shadow settings for consistentency
2024-09-20 18:10:26 +10:00
Dion Moult
542ae6b44a
Basic support for editing swept profiles and positions
2024-09-20 18:08:16 +10:00
Gorgious56
c1a92bf1f3
Fix #5398 : Only show relevant parametric templates in the type manager. Also fix forgotten line in previous commit.
2024-09-20 09:58:26 +02:00
Gorgious56
a8abc8e379
Fix #5333 : Searching for the class name using the looking glass button doesn't close the type manager anymore.
2024-09-20 09:53:00 +02:00
Andrej730
4f64d044ac
Option to assign non-ifc bsdd properties #5404
...
Example - https://imgur.com/a/cPtEkX2
Also Attribute now has additional field "metadata" for storing some case specific data
2024-09-20 12:34:27 +05:00
Andrej730
1f4d973a79
black .
2024-09-20 12:34:26 +05:00
Dion Moult
bfd5b3c1c7
Increase websocket server limit from 1MB to 10MB to allow for larger datasets like large work schedules.
2024-09-20 17:03:46 +10:00
Dion Moult
8866a34f22
Fix #5408 . Use an angular tolerance of 0.1 degrees to determine if something has moved and need resyncing.
2024-09-20 17:03:00 +10:00
Andrej730
669d88fbb1
sequence - fix all import operators missing Ifc operator #5423
2024-09-20 11:14:34 +05:00
Andrej730
7470fb0786
sequence - remove unnecessary Ifc operators
2024-09-20 11:14:34 +05:00
Andrej730
b6fca3916e
assigning process to control - add an error message
2024-09-20 11:14:34 +05:00
Andrej730
5373c7ee9e
sequence import/export - add info message when operator finished
2024-09-20 11:14:34 +05:00
Manu Varkey
f708d9cb4d
Support natural sorting of types closes #5050
2024-09-20 09:20:03 +10:00
Andrej730
f1f055d19d
Restore missing dev docs after 53d7624
2024-09-19 18:56:45 +05:00
Andrej730
e175de5365
Fix misleading docs urls after 53d7624
2024-09-19 18:56:45 +05:00
Andrej730
31befd424b
Fix documentation missing dev env scripts
...
Mentioned in #5398
2024-09-19 18:56:45 +05:00
Andrej730
394b24ddfe
More realistic test for ca8577a8dd
2024-09-19 18:24:37 +05:00
Andrej730
f184ce5386
Support de08d3726e for ifc2x3 #5420
2024-09-19 18:13:14 +05:00
Andrej730
b7d725254d
Temporarily revert 51211dc527 to fix broken bonsai builds #4924
...
Need to not to forget to revert a revert later...
2024-09-19 17:30:10 +05:00
Andrej730
c9f9cf89e8
file -> import/export - add poll messages in case ifc is not loaded
2024-09-19 17:21:51 +05:00
Andrej730
fb6d2b8de2
pp2ifc - preserve original ids
...
Now we're going to use bar ids instead their detalization ids (e.g. expanded task ids, task ids, milestone ids) because it is the way how it works in the software pp file originates from.
2024-09-19 17:21:51 +05:00
Andrej730
ddca950f65
pp2ifc - save calendar identification for pp file to ifc
2024-09-19 17:21:51 +05:00
Andrej730
96756d63d4
pp2ifc refactor and add support for more languages #5417
2024-09-19 17:21:50 +05:00
Andrej730
a5b3c9beb4
black .
2024-09-19 17:21:50 +05:00
Gorgious56
1974974071
Fix #5410 : bim.enable_adding_presentation_style no longer throws an error in a file with no ifc project when launching the search operator (F3)
2024-09-19 14:03:56 +02:00
Manu Varkey
4225643bc0
Disable blf shadow setting after use. Fixes #5387
2024-09-19 21:49:58 +10:00
Dion Moult
4b7bb1533e
Fix #5394 . Fix bug when switching fillings where the current representation was not the body representation.
2024-09-19 16:25:33 +10:00
Dion Moult
d3fdbf4dae
(Un)Bump IOS - downgrade due to critical bugs with OCC 7.7
2024-09-19 11:12:11 +10:00
Dion Moult
5d0fb18ea1
Fix #5395 . Apparently wheels exclude directories with no files in them, so the cache folder wasn't shipped.
2024-09-19 10:59:32 +10:00
myoualid
45708ee287
Cost module web UI:
...
- quick button to add a SUM cost value
- style improvements
2024-09-18 20:34:31 +01:00
Thomas Krijnen
116a0f1a02
Add test
2024-09-18 19:28:55 +02:00
Thomas Krijnen
2554280e50
triangulation-type setting for non-triangulated polyhedral from iterator
2024-09-18 19:28:07 +02:00
Andrej730
748fcce3f5
Adding classification reference tests
2024-09-18 18:44:34 +05:00
Andrej730
5b2733bb3c
add classification reference from bsdd - support ObjectType
...
it seems in bsdd some ObjectType is also provided using "undefined_set" pset
example - https://identifier.buildingsmart.org/uri/ifcairport/ifcairport/1.0/class/ifcairport0000000004
2024-09-18 18:44:34 +05:00
Andrej730
115a48fc1a
bsdd - fix bug when loading pset would set properties in incorrect way
...
It was using name instead of propertyCode which was leading to assigning incorrect properties...
2024-09-18 18:44:34 +05:00
Andrej730
06d927f8bb
bsdd operators descriptions and naming
2024-09-18 18:44:34 +05:00
Andrej730
de08d3726e
Bonsai - set active bsdd when loading project
...
When loading an ifc project it will search it for bsdd ifcclassifications and will set one as active if finds it, so now it will be a bit more convenient working with bsdd classification assignment as it active bsdd previously was always getting reset when you reload ifc file.
Example - https://imgur.com/a/stlJqwm
2024-09-18 18:44:34 +05:00
Andrej730
4dbfeefe53
Fix UI errors getting elements using qset in IFC2X3
...
In IFC2X3 IfcQuantitySet didn't existed yet
Mentioned in #5404
2024-09-18 18:44:33 +05:00
Andrej730
eb823a5ecd
bsdd search to check whether query is long enough
...
It's an API requirement and using shorter queries was giving confusing results.
https://github.com/buildingSMART/bSDD/blob/master/Documentation/bSDD%20OpenAPI.yaml
2024-09-18 18:44:33 +05:00
Andrej730
8f7949808a
Move id to IfcGeom::Representation::Representation and document it
...
as it's a common attribute for all 3 Representation subclasses we have
2024-09-18 18:44:33 +05:00
Andrej730
5860c3fe50
black .
2024-09-18 18:44:33 +05:00
Dion Moult
dbfa4ecf65
Fix minor regression in fe0be0c
2024-09-18 22:58:22 +10:00
Dion Moult
1320eac800
Switch representation now cleans up orphaned meshes itself so callers don't need that responsibility
2024-09-18 22:58:22 +10:00
ArturTomczak
81e4ad2ce2
handle numeric simpleValue ( #5376 )
...
The input value can be a string or number, but 1.0 schema only accepts strings. The processing of int and float was missing. The casting to string might no longer be needed in IDS 1.1. https://github.com/buildingSMART/IDS/issues/342
2024-09-18 21:42:31 +10:00
Dion Moult
736d91f38e
Shape builder now supportes meshy things and faceted breps
2024-09-18 21:35:40 +10:00
Dion Moult
a1d99b544a
Basic support for deleting items, and editing meshlike items
2024-09-18 21:35:40 +10:00
Dion Moult
ed530f737c
Remove deprecated code for fixed bug #2002 .
2024-09-18 21:35:40 +10:00
Dion Moult
0899a2a87b
Fix bug where switching geometry may not correctly share representations
2024-09-18 21:35:40 +10:00
Thomas Krijnen
3bdbb3d513
Don't import cwd ifcopenshell folder when running tests
2024-09-18 11:35:24 +02:00
Andrej730
e22ec57e16
Fix #5409
2024-09-18 13:56:06 +05:00
Dion Moult
9b06797efa
Fix crash when removing representation item with removed inverses
2024-09-18 17:35:51 +10:00
Dion Moult
96ba8e8e29
Fix bug where dissolving edges created corrupted geometry for advanced breps with curved surfaces
2024-09-18 17:34:41 +10:00
Bruno Postle
6e9e270683
IfcGit don't switch colouring so much closes #5402
...
Viewing changes necessarily sets object colours and switches the
viewport to object colouring. Previously most other operations switched
the viewport 'back' to material colouring. This was an annoyance for
users whose workflow makes use of manual object colouring.
Now only operators that reload the model (revert, switch and merge), the
refresh button, and attempting to view changes with the current revision
switch to material colouring.
2024-09-17 23:34:04 +01:00
Andrej730
53a6192858
Skip loading mappings if representation has openings #5405
...
To avoid errors
2024-09-17 18:25:59 +05:00
Andrej730
2a2efefac3
IfcSchema declaration_by_name to be safe
...
Couldn't find if we actually use it anywhere in the code but better to keep it safe, especially because it's exposed to Python and by accident user might provide some too bit integer instead of a string.
2024-09-17 16:28:02 +05:00
Andrej730
a7cac5c77b
IfcWrap cmake - regenerate .py and .cxx on changes in ifcopenshell libs
...
Previously they wouldn't be regenerated unless you edit .i files or manually remove .py/.cxx.
2024-09-17 16:28:01 +05:00
Andrej730
1575696a8b
ifcwrap cmake - use default CMP0078 policy
...
Something weird happened during merge in 7d90c31 and changes from 0055a5d were not applied
2024-09-17 16:28:01 +05:00
Thomas Krijnen
555eb44f00
Add IfcAlignmentSegments to XML output
2024-09-17 13:07:33 +02:00
Thomas Krijnen
0b555b30d2
Add IfcAlignmentSegments to XML output
2024-09-17 13:03:25 +02:00
Andrej730
06f14774f7
Avoid more unnecessary calls to docs api
...
Noticed that prop_value could be other types besides str (e.g. int when using context menu on UIList item) and we can skip them to avoid redundant api calls.
2024-09-16 18:54:13 +05:00
Andrej730
11ddcb0256
IfcSchema declaration_by_name to use size_t instead of int
...
By accident noticed that `declaration_by_name(-1)` crashes python. If we use size_t it will just throw an error like below
NotImplementedError: Wrong number or type of arguments for overloaded function 'schema_definition_declaration_by_name'.
Possible C/C++ prototypes are:
IfcParse::schema_definition::declaration_by_name(std::string const &) const
IfcParse::schema_definition::declaration_by_name(size_t) const
2024-09-16 18:54:13 +05:00
Andrej730
0d77ff5270
remove debug code
2024-09-16 18:54:13 +05:00
Andrej730
c75fa70d23
Support for loading face colors from ifc (IfcIndexedColourMap)
...
example - https://imgur.com/a/l8Yn4Rr
2024-09-16 18:54:13 +05:00
Andrej730
6d8ffc27cc
ifcopenshell.util.shape.get_material_colors
2024-09-16 18:54:13 +05:00
Andrej730
531327578f
bim.print_unused_elements_stats - to skip colour map
2024-09-16 18:54:12 +05:00
Andrej730
6a47e68b78
fix typo
2024-09-16 18:54:12 +05:00
Andrej730
5ec10018d9
bim.purge_unused_elements_by_class - skip IfcRepresentationContext
2024-09-16 18:54:12 +05:00
Andrej730
ec0094ef33
bim.purge_unused_elements_by_class - keep list sorted
2024-09-16 18:54:12 +05:00
Andrej730
a2c2cf65a1
bim.purge_unused_elements_by_class - make filepath argument optional
2024-09-16 18:54:12 +05:00
Andrej730
cfd63392e7
Add to recent projects when project is saved
2024-09-16 18:54:12 +05:00
Andrej730
0891df5d6c
typing
2024-09-16 18:54:12 +05:00
Bruno Postle
cf95c9151c
black formatting after 71de39e
2024-09-15 17:34:44 +01:00
Bruno Postle
71de39ea7c
Recover external git repo changes, fixes #5311
...
IfcGit didn't cope gracefully when commits and/or repositories vanished
unexpectedly
2024-09-15 17:24:36 +01:00
Andrej730
c487643d76
ifcgit - fix errors if paths are mixing up slashes and backslashes
...
`repo.path` is always setup using current platform type of slashes since it's normalized by get_path_dir but when we pass a path to index.add it's not normalized leading to errors
2024-09-14 11:41:58 +05:00
Andrej730
6dbfb3afb3
black format
2024-09-14 11:41:58 +05:00
Bruno Perdigão
aa3a362391
Fixed issue in polyline tools where orbit and pan where not updating the ray cast.
2024-09-13 17:35:08 -03:00
Bruno Perdigão
a2cf95038a
Custom snap symbols #5325 .
2024-09-13 17:34:08 -03:00
Bruno Perdigão
96f3ee2f3a
Added text background to polyline measurements.
2024-09-13 15:38:05 -03:00
Bruno Perdigão
1659498c88
Fix 'C' to trigger wall preview
2024-09-13 14:08:18 -03:00
Bruno Perdigão
a992844e93
Fix enter to trigger wall preview
2024-09-13 13:50:27 -03:00
Bruno Perdigão
59b665758d
Colors update in polyline decorators.
2024-09-13 12:38:35 -03:00
Bruno Perdigão
4dc8a27e82
Fix on polyline wall preview when dealing with closed loops.
2024-09-13 12:38:35 -03:00
Bruno Perdigão
e83bdcc820
Polyline tool - Wall preview is now working for angled walls.
2024-09-13 12:38:35 -03:00
Bruno Perdigão
7ea3d63aa0
Small fix to clear wall preview when deleting all polyline points.
2024-09-13 12:38:35 -03:00
Bruno Perdigão
bd51363532
Small fix related to trying to use polyline wall without wall type.
2024-09-13 12:38:35 -03:00
Bruno Perdigão
d4ccc0dff9
More fixes related to d5b20397a
2024-09-13 12:38:35 -03:00
Bruno Perdigão
66fe2331ef
fix rebase conflict
2024-09-13 12:38:31 -03:00
Bruno Perdigão
b7c4f1a1f0
Minor fix in polyline decorator variables initialization.
2024-09-13 12:37:45 -03:00
Bruno Perdigão
c2cf8cd7dd
Fix bug in polyline tool when "=" were pressed before "TAB".
2024-09-13 12:37:45 -03:00
Bruno Perdigão
efcaf14fbb
fix rebase conflict
2024-09-13 12:37:39 -03:00
Bruno Perdigão
bc884c9dc4
fix rebase conflict
2024-09-13 12:35:50 -03:00
Andrej730
c340f496f2
swizzle material and style purging operators
...
purging material should come first as it may unlock purging more styles
2024-09-13 18:50:54 +05:00
Andrej730
b8aefe7df0
geometry.unassign_representation - fix missing ifc2x3 tests
2024-09-13 18:50:54 +05:00
Andrej730
8061e22480
geometry.unassign_representation to remove shape aspects
...
previously it was leaving unused shape aspects unconnected to any other elements, now it will purge them
2024-09-13 18:50:54 +05:00
Andrej730
aa289fd796
purge unused materials to consider IfcMaterialLists #3914
...
and IFC2X3 material sets and layers
2024-09-13 18:50:54 +05:00
Andrej730
b911b68aec
typing
2024-09-13 18:50:54 +05:00
Andrej730
80af847f99
purge unused material to try to purge materials recursively #3914
...
As on first iteration it may remove only unused material sets and on the next iteration it will be able to remove IfcMaterials that were not used anywhere else besides those material sets.
2024-09-13 15:15:51 +05:00
Andrej730
4d149e8a78
Purge unused materials to consider materials with styles and psets #3914
...
If material has a style or a pset it creates an inverse that shouldn't prevent material from being purged.
2024-09-13 15:15:51 +05:00
Andrej730
c41a4607d1
Fix missing return values in e5a59d0bea
2024-09-13 15:15:50 +05:00
Andrej730
148f8361be
make bump - show an error for incorrect use
2024-09-13 15:15:50 +05:00
Thomas Krijnen
d879bf9f89
Reintroduce --model-offset/-rotation MODEL_OFFSET/_ROTATION setting #5231
2024-09-13 11:38:24 +02:00
Andrej730
81399ffd19
Support loading project without clearing Blender session
...
It wasn't working anymore after 27a2c94 . Importing IFC file as just geometry should be a separate option from 'should_start_fresh_session' and I've added it as 'import_without_ifc_data' property during project load (now both options are also available for users in project load dialog - https://i.imgur.com/Fvbv4Dy.png )
2024-09-13 11:47:49 +05:00
Thomas Krijnen
21cfd03301
Merge pull request #5362 from IfcOpenShell/fix-ifccircle-ifcellipse-processing
...
Fix error processing IfcCircle/IfcEllipse #5352
2024-09-12 20:19:17 +02:00
Thomas Krijnen
1697e49e65
Merge branch 'v0.8.0' into fix-ifccircle-ifcellipse-processing
2024-09-12 20:18:57 +02:00
Andrej730
51211dc527
ifcopenshell makefile - use VERSION
2024-09-12 19:19:11 +05:00
Andrej730
806975c4b9
bump ifcopenshell build for bonsai
2024-09-12 19:07:20 +05:00
Andrej730
e3c23072a5
Hide edit mode for locked elements #5371
2024-09-12 18:40:22 +05:00
Andrej730
d34d3312ba
Add messages for operations with locked elements
...
Otherwise they just silently failing leaving user confused
2024-09-12 18:40:21 +05:00
Andrej730
845402ea9c
Replace grids/space elements visibility two toggles with one
...
See - https://i.imgur.com/5GssIDp.png (same for grids)
2024-09-12 18:40:21 +05:00
Andrej730
e5a59d0bea
remove unnecessary ifc operators
2024-09-12 18:40:21 +05:00
Andrej730
3bb4243850
Purge unused styles and materials #3914
...
Example - https://imgur.com/a/JXEofa1
2024-09-12 18:40:21 +05:00
Andrej730
094bbe6913
bim.override_origin_set to reuse descriptions from blender operator
2024-09-12 18:40:20 +05:00
Andrej730
0f6cc7326c
bim.add_proposed_prop - document possible property types
2024-09-12 18:40:20 +05:00
Andrej730
cc90c92dec
bim.add_proposed_prop to show error message if property already exists
2024-09-12 18:40:20 +05:00
Andrej730
e81fe60218
CMakeLists - fix issue on msvc >= 14.40 #5158
2024-09-12 18:40:20 +05:00
Andrej730
aa97ff7f16
typing
2024-09-12 18:40:20 +05:00
Andrej730
2168b3b7bd
black format
2024-09-12 18:40:20 +05:00
Andrej730
cb21f9bc07
taxonomy::cast - order upgrades in the same order as in taxonomy::dcast for consistency
2024-09-12 16:30:06 +05:00
Andrej730
f930897240
taxonomy::dcast - add missing curve_to_loop_upgrade
2024-09-12 16:30:05 +05:00
Andrej730
93c47498ef
AbstractKernel::dispatch_conversion - use static cast
...
Previously it was using taxonomy::cast that was also trying to upgrade current item - due to the strictness of dispatch_conversion (it works only if type matches exactly because of `N == item_kind`) upgrades will never succeed so we may just skip them.
2024-09-12 16:30:05 +05:00
Thomas Krijnen
2545769f67
Add support for IfcSectionedSurface
2024-09-12 11:20:48 +02:00
Ryan Schultz
35a4d87a65
give schedules a css style called 'schedule' to help with styling
2024-09-11 23:06:43 -05:00
Thomas Krijnen
c7183a58ea
aggregate of int/real compatibility in parsing #5302
2024-09-11 20:15:14 +02:00
Thomas Krijnen
5a44a8e325
Defensiveness against invalid data
2024-09-11 20:13:50 +02:00
myoualid
f5e02d1413
Merge branch 'v0.8.0' of https://github.com/IfcOpenShell/IfcOpenShell into v0.8.0
2024-09-11 19:00:27 +01:00
myoualid
1964def3ca
web ui cost module features:
...
- improve UI for editing cost quantites
- add, edit, delete manual quantities
2024-09-11 19:00:15 +01:00
Thomas Krijnen
cc2017518b
Update build-all.py : _ifcopenshell_wrapper now called ifcopenshell_wrapper?
2024-09-11 19:58:52 +02:00
myoualid
97393eb173
prevent spatial elements selection from being assigned to cost control
2024-09-11 18:48:59 +01:00
Andrej730
4c04bc7cb5
fix test_create_IfcBSplineCurve
2024-09-11 19:42:47 +05:00
Andrej730
005c17084b
dispatch_with_upgrade to use only upgrade types for optimization
2024-09-11 19:42:47 +05:00
Andrej730
858e57351e
AbstractKernel::convert - more generic approach
2024-09-11 19:42:47 +05:00
Andrej730
9be392e2f1
test TesselateElements #5199
2024-09-11 16:02:48 +05:00
Andrej730
f4c3ceb693
black format
2024-09-11 16:02:48 +05:00
Andrej730
32c6ea9363
shapebuilder.profile - fix bug in ifc2x3 assigning non existing Position attr
...
confused arbitrary profiles with parametric profiles in 640320f
2024-09-11 16:02:48 +05:00
Andrej730
ad8131114d
IfcLine, IfcBSplineCurve geometry tests
2024-09-11 15:53:04 +05:00
Andrej730
fe0be0cdae
shape_builder.create_axis2_placement_2d
2024-09-11 15:53:04 +05:00
Andrej730
35221ed772
AbstractKernel::convert to use upgrade to edge as a fallback
2024-09-11 15:53:04 +05:00
Andrej730
37315e941a
taxonomy.h - move upgrades code to cpp
2024-09-11 15:53:04 +05:00
Andrej730
11f017e715
revert manual upgrade to edges for ellipses and circles
2024-09-11 15:53:04 +05:00
Thomas Krijnen
c63f1cfa88
Iterator: Don't crash on calling get() before initialize()
2024-09-11 11:18:09 +02:00
Dion Moult
5fe85e71bb
Work in progress example to import multiple representation items as an object-based breakdown
2024-09-11 18:04:03 +10:00
Dion Moult
f8f3519a68
Minor bugfix to allow unaggregation of hidden elements
2024-09-11 13:45:11 +10:00
Dion Moult
bad6931a84
Fix bug in tessellate elements
2024-09-11 12:26:39 +10:00
myoualid
158f11d58c
Cost web ui improvements:
...
- hovering cost item row displays quick actions
- clicking the quantity cells and cost cells prompts form to edit values
- further style improvements & refactoring
2024-09-10 22:48:22 +01:00
Bruno Perdigão
794154f6f5
Instructions in polyline tools were moved to the status bar.
...
Previously the instructions were shown on screen with decorators. Now it is handled by the modal function of the polyline tools.
2024-09-10 15:41:02 -03:00
Bruno Perdigão
c06929e1c7
Major refactor in polyline tool to use a base class for other operators.
...
Polyline Wall and Measure tool now share most of the logic by inheriting from a base class PolylineOperator.
This should facilitate the implementation of other tools that use polyline.
2024-09-10 15:37:57 -03:00
Bruno Perdigão
1a587dea7d
Minor refactor of tool/polyline
2024-09-10 15:37:57 -03:00
Bruno Perdigão
55df9a42e6
WIP - More refactor
2024-09-10 15:37:57 -03:00
Bruno Perdigão
be8b325a83
WIP - Polyline tool refactor
2024-09-10 15:37:57 -03:00
Bruno Perdigão
2e192034f8
Small tweak in 8032e4851
2024-09-10 15:37:57 -03:00
Bruno Perdigão
ce8e104b0b
Change snap axis to 15 angles increments.
2024-09-10 15:37:57 -03:00
Bruno Perdigão
e48050af4b
Fix #5336
2024-09-10 15:37:57 -03:00
Bruno Perdigão
d63961d840
Small fix on previous commit
2024-09-10 15:37:57 -03:00
Bruno Perdigão
edf0804b0e
Small fix on how the input UI rounds numbers
2024-09-10 15:37:57 -03:00
Bruno Perdigão
aaa3d5c443
Small fix on previos commit
2024-09-10 15:37:57 -03:00
Bruno Perdigão
2008081d9a
Implementation of #5317 .
...
The number in the input UI will be replaced if the user presses a number.
This behavior will be different if the user press "=" or backspace.
2024-09-10 15:37:57 -03:00
Bruno Perdigão
e546971ada
Changed input validation to tool/polyline.py
2024-09-10 15:37:57 -03:00
Bruno Perdigão
8dc77735a5
fix rebase conflict
2024-09-10 15:37:57 -03:00
Richard Brice
cc7171060f
Decouples evaluation of a piecewise_function from the function itself ( #5344 )
2024-09-10 10:11:17 -07:00
myoualid
67a7e713b2
fix util.get_elements_by_pset to account for quantity sets
2024-09-10 17:17:42 +01:00
myoualid
3abe5edd21
Fix generating 3D view drawing when IFC elements don't exist in the Blender scene ( such as IfcDistributionPort)
2024-09-10 17:16:09 +01:00
Andrej730
34aed93b7b
Fix 2 segfaults creating IfcEllipseProfileDef
...
1) taxonomy::ellipse was missing matrix so create_shape was segfaulting either was if Position was set or was not (segfaulting on line - https://github.com/IfcOpenShell/IfcOpenShell/blob/5616367a03ea397885e93523e55788da82238742/src/ifcgeom/kernels/opencascade/loop.cpp#L92 )
2) was segfaulting when there was no default matrix
Removed fc->matrix assignment as matrix is already assigned to the curve.
2024-09-10 18:28:18 +05:00
Andrej730
6fd4d8b1ba
Fix sequence.get_related_products bug after 845d772
2024-09-10 18:28:18 +05:00
Andrej730
2d0b262351
get_nested_tasks to discard non-ifctask elements #4911
2024-09-10 18:28:18 +05:00
Andrej730
a4f669e549
ifc5d.qto - some clarifications for arguments
2024-09-10 18:28:18 +05:00
Andrej730
dc92a8fd27
Bonsai - setup default values for new patametric profiles
...
So there will be less invalid IFC and user will get a preview right away after creating a new profile.
Example - https://imgur.com/a/GjkCql4
2024-09-10 18:28:18 +05:00
Andrej730
3bb0901e3e
Profiles UI - better handling for invalid profiles
...
Previously it would be just console errors possibly breaking UI, now there will be UI error message - https://imgur.com/1o9teJ0
2024-09-10 18:28:17 +05:00
Andrej730
2d68d344bd
Profiles UI - update displayed psets when user is changing active profile
...
previously it would get stuck until some other operator would refresh ui
2024-09-10 18:28:17 +05:00
Andrej730
ddf92ab8fb
typing
2024-09-10 18:28:02 +05:00
Andrej730
9a6fc58949
Fix typo
2024-09-10 18:28:02 +05:00
Andrej730
765b5c2f5c
black format
2024-09-10 18:28:01 +05:00
Andrej730
5616367a03
don't deep copy psets for optimization
...
Related to #5291
pset.edit_pset should cover it since it does support unsharing shared properties
2024-09-10 14:21:14 +05:00
Andrej730
6cf9875472
Fix error processing IfcCircle/IfcEllipse #5352
2024-09-10 12:54:44 +05:00
Dion Moult
5f8fdf233f
Fix #5358 . Easy way to toggle visibility of spatial elements and grids.
2024-09-10 14:29:55 +10:00
Manu Varkey
be090a3a81
Fixes #5353 ( #5354 )
...
* Fixes #5353
* Change logic to use natsorted
2024-09-10 14:14:27 +10:00
Takayuki Kato
1da47d9271
Add support for editing IfcPhysicalComplexQuantity in edit_qto ( #5335 ) ( #5356 )
...
* Add support for editing IfcPhysicalComplexQuantity in edit_qto (#5335 )
* Fix lint-formatting issues
2024-09-10 14:13:57 +10:00
Ryan Schultz
4917cd19a2
addresses https://github.com/IfcOpenShell/IfcOpenShell/commit/3ceeaa739fb20125b7195dbd69e5e8606a3d5ed8#r146061329
2024-09-09 20:01:32 -05:00
Andrej730
e7ad71b51d
black format
2024-09-09 18:01:23 +05:00
Andrej730
e87faa167c
typing
...
also small optimization in MaterialCreator.create to address ifc a couple times less
2024-09-09 17:28:24 +05:00
Andrej730
13ed4d3a6c
ifcopenshell to support styles assigned to IfcFaces #4038
2024-09-09 17:28:23 +05:00
Andrej730
27b9709b78
style.assign_representation_styles to support topology reprensentations #4038
2024-09-09 17:28:23 +05:00
Andrej730
2d988ac445
Representation UI - show IfcTopologyRepresentation #4038
...
Now it will show representation items count and will load representation items for IfcTopologyRepresentations.
2024-09-09 17:28:23 +05:00
Andrej730
6da7e18f50
Fix error adding typed text annotations #5300
...
Apparently it's part of #4832 , previously creating a shape for IfcTypeProduct with literals would error, we ignored the error and type product end up being an empty. After 0.8.0 create_shape for literals creates an empty shape (0 verts) and we need to skip it, otherwise there would be an empty mesh representaiton.
2024-09-09 17:28:23 +05:00
Andrej730
a3c5c334f1
Show info message using annotation tool hotkeys without drawing loaded
2024-09-09 17:28:23 +05:00
Manu Varkey
09b8c4482f
Update tooltips for UI elements ( #5348 )
...
* Update documentation
* Add further documentation
* Update tooltip after discussion
1. Change void to opening
2. Add blank bl_label fields
* Make missed out correction
2024-09-09 19:38:10 +10:00
Thomas Krijnen
680c73f15b
Less noisy faceset helper messages
2024-09-09 09:58:02 +02:00
Thomas Krijnen
89e3650d77
No need to check for manifoldness when processing boolean ops in 2d
2024-09-09 09:57:43 +02:00
Thomas Krijnen
bcc3b43dc1
--element-hierarchy matrix transpose #5191
2024-09-09 09:57:09 +02:00
Dion Moult
5cfcba5272
Fix #3333 . Fix #5290 . Fix bugs where Shift-Click or Alt-Click drawing activation modes didn't quite do what was advertised.
2024-09-09 17:43:40 +10:00
Andrej730
2416d91748
black format
2024-09-09 10:37:44 +05:00
Andrej730
7d90c319f0
Merge branch 'test-cmake-policy-fix' into v0.8.0
2024-09-09 10:34:15 +05:00
Dion Moult
b71034765c
Black
2024-09-09 12:43:22 +10:00
Dion Moult
f82b97e97b
Fix #5329 . Fix #5267 . Add support for composite profile definitions and nested closed profiles.
2024-09-09 12:43:13 +10:00
Dion Moult
ba5b27d03c
Support getting 2D coordinates in util.shape.get_vertices
2024-09-09 12:41:40 +10:00
myoualid
98ab5399f2
web ui cost module:
...
- double click cost cell to enable editing cost values.
- fix tables' height / scrollbar behaviour
2024-09-09 01:08:29 +01:00
myoualid
2d7614622f
fix table styles for cost schedule module
2024-09-08 20:37:46 +01:00
Bruno Perdigão
1c7b36f233
Polyline tool - changed decorator order to show Input UI in front.
2024-09-08 12:04:38 -03:00
Bruno Perdigão
d42890f214
Fix bug when trying to calculate the angle from vectors too close to each other.
2024-09-08 12:01:04 -03:00
myoualid
c607cbc9d7
cost module web ui improvements:
...
-add ribbon bar,
- improve settings menu with ability to change font size for tables.
- Improve cost schedule spreadsheet layout
2024-09-08 15:29:46 +01:00
myoualid
83be26e196
fix loading cost schedule webui from blender operator
2024-09-08 15:25:56 +01:00
Dion Moult
2f026218ff
Purge deprecated dumb wall / slab qto listener in favour of Ifc5D
2024-09-08 17:31:33 +10:00
Dion Moult
7615173924
Minor fix to sync IFC mode and Blender mode when editing profiles
2024-09-08 17:31:33 +10:00
myoualid
171c3083da
Cost module web-ui can now:
...
- assign cost item products from Blender selection
- display list of selected products ( with available quantities, subtotals, and highlighting already assigned products)
- display and refresh assigned products
- highlight loaded cost schedule
2024-09-08 01:16:48 +01:00
Ryan Schultz
fe317f9231
fix #3959 - drawing boundary changes are reflected on bim.create_sheets as well.
...
and only updates drawings that have been changed
2024-09-07 15:35:05 -05:00
Ryan Schultz
5363c33888
fix #5290 : to fix error after shift and click bim.activate_drawing
2024-09-07 13:01:09 -05:00
Dion Moult
795d2c371e
Fix #5340 . Fix cosmetic console bug when adding a spatial subelement and selecting it.
2024-09-07 22:12:54 +10:00
Manu Varkey
1dfa3f8d79
Implement sorting of spacial containers by elevation and name
2024-09-07 21:46:35 +10:00
Dion Moult
2626165629
Fix #5334 . Bug where the wrong type would be added if you added a new type then switched tool.
2024-09-07 21:13:56 +10:00
Dion Moult
0a17588db8
Fix #5346 .
2024-09-07 17:05:19 +10:00
Andrej730
33001e6c6d
profile.copy_profile
...
Fixes issue duplicated profile missing it's psets.
2024-09-07 11:22:43 +05:00
Andrej730
e224bfd19f
Fix error showing material/profile psets in bbim after 691815fd41
2024-09-07 11:22:43 +05:00
Andrej730
c1d5c18724
fix black format
2024-09-07 11:22:43 +05:00
Dion Moult
557a120178
Fix #5341 . Editing elevations in spatial decomposition panel is now a string and has an immediate effect.
2024-09-07 15:37:01 +10:00
Dion Moult
cea4c0c01d
Fix #5345 . Bug when adding a new representation using "full representation". No temp data is used, so deletion not required.
2024-09-07 14:50:09 +10:00
Dion Moult
8b1d3a0c5d
Fix #4769 . Bug where editing grids didn't work with non-SI units.
...
I really don't know how this mistake lasted this long.
2024-09-07 13:48:42 +10:00
Dion Moult
c5fc86d148
Fix #5337 . You can now delete grids, which recursively delete all axes. Edit mode now also respects locking.
2024-09-07 13:18:36 +10:00
Ryan Schultz
8cec717315
fix #5304 : Have demo project have Plan/Annotation/REFLECTED_PLAN_VIEW context
2024-09-06 19:49:38 -05:00
Dion Moult
7905cd8bd3
See #5337 . Grid decorators now turn off when editing an axis.
2024-09-07 10:01:57 +10:00
Dion Moult
0337034d28
Fix #4881 . Fix bug where editing grid axes didn't work.
2024-09-07 10:01:57 +10:00
myoualid
88a40e0052
improve cost table responsiveness and highlight currently loaded cost schedule
2024-09-06 20:51:46 +01:00
Richard Brice
c9d2390d9a
Implements cant geometry
2024-09-06 10:02:08 -07:00
Andrej730
0055a5dd82
ifcwrap cmake - use default CMP0078 policy
2024-09-06 19:58:52 +05:00
Andrej730
4ff0893a8b
ifcwrap cmake - fix CMP0078 warning
2024-09-06 18:28:50 +05:00
Andrej730
791d098800
ifcwrap cmake - fix CMP0078 warning
2024-09-06 18:12:00 +05:00
Andrej730
8e87d0e303
typing
2024-09-06 18:11:25 +05:00
Andrej730
eaaa18468a
Reuse tool.Ifc.Operator
2024-09-06 18:11:25 +05:00
Andrej730
871cd45f53
selector.set_element_value to support 'predefined_type' keyword
...
See more details in https://community.osarch.org/discussion/comment/22134/#Comment_22134
2024-09-06 18:11:24 +05:00
Andrej730
39fd9ce462
attribute.edit_attributes - small optimizations
...
remove settings dictionary and remove some ifc calls
2024-09-06 18:11:24 +05:00
Dion Moult
4c68ec6f82
Fix bug where editing AxisTag didn't change the grid axis name
2024-09-06 23:10:43 +10:00
myoualid
be71eb274b
display cost schedule predefined type in web ui
2024-09-06 12:08:45 +01:00
Andrej730
008e2c01c3
selector.set_element_value - temporarily skip 'predefined_type'
...
to avoid issues importing csvs that used it to extract correct predefined type
Example warning:
WARNING. Assigning 'predefined_type' is not yet supported. Skipping value 'ELECTRICACTUATOR' for element: '#89=IfcActuator('1RjCen6XL6WAdhz7HumLFU',$,'Actuator.002',$,$,#179,$,$,.ELECTRICACTUATOR.)'.
2024-09-06 15:18:15 +05:00
Andrej730
a1e51757b1
attribute.edit_attributes - document behaviour for PredefinedType
2024-09-06 15:18:15 +05:00
Andrej730
d5169e85fa
bim.import_ifccsv to support undo (missing Ifc Operator)
...
Previously it wasn't possible to undo changes in the currently loaded IFC model after bim.import_ifccsv
2024-09-06 15:18:15 +05:00
Andrej730
cfc243949d
Fix error unassigning type from element without representation
...
Traceback
Traceback (most recent call last):
File "\bonsai\bim\module\type\operator.py", line 63, in execute
return IfcStore.execute_ifc_operator(self, context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "\bonsai\bim\ifc.py", line 408, in execute_ifc_operator
result = getattr(operator, "_execute")(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "\bonsai\bim\module\type\operator.py", line 78, in _execute
active_context = active_representation.ContextOfItems
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'ContextOfItems'
Error: Python: Traceback (most recent call last):
File "\bonsai\bim\ifc.py", line 408, in execute_ifc_operator
result = getattr(operator, "_execute")(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "\bonsai\bim\module\type\operator.py", line 78, in _execute
active_context = active_representation.ContextOfItems
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'ContextOfItems'
2024-09-06 15:18:15 +05:00
Andrej730
a3ff0a61a6
ifccsv to web - fix Tabulator dropping columns with non-unique names
2024-09-06 15:18:15 +05:00
`myoualid`
456ad2af8e
remove annoying console logs
2024-09-06 10:14:21 +01:00
Dion Moult
7b8e234683
Remove add grid in add menu, and run black
2024-09-06 18:18:32 +10:00
Dion Moult
95b7a79c64
Locked elements are now blocked from being duplicated too
2024-09-06 18:07:09 +10:00
Dion Moult
4a5e180479
You can now lock and unlock spatial / grid elements, which affects your ability to delete or move them
2024-09-06 17:58:52 +10:00
`myoualid`
d6098a0b6d
- web ui features to add a new cost schedules, and root cost items
...
- improved ui for cost schedules
- sharing more css across files
- refactor get_predefined_types(cost_schedule)
2024-09-06 08:55:10 +01:00
Dion Moult
541a6e18e6
Fix broken ifcconvert table in docs
2024-09-06 16:55:56 +10:00
Dion Moult
11497f9b37
Add decorator for grids outside drawing view
2024-09-06 16:40:56 +10:00
Dion Moult
6b14111b24
More grid panel to spatial subpanel
2024-09-06 16:40:56 +10:00
Andrej730
f27bb6effe
black format
2024-09-06 11:13:09 +05:00
Andrej730
6ebec7e0e5
pset.unshare_pset - fix bug where it would leaving an orphaned pset
...
It was leaving an orphaned pset if 'products' was a list of all elements pset is assigned to. Then it would create a new pset for each element leaving original pset orphaned.
2024-09-06 11:04:05 +05:00
Andrej730
ffb2ea2be3
bim.unshare_pset - move implementation to core
2024-09-06 11:04:04 +05:00
Andrej730
89bb7c76de
bim.unshare_pset - to work for all selected objects #5291
2024-09-06 11:04:04 +05:00
Andrej730
a867e72fd3
rename get_elements_using_pset -> get_elements_by_pset for consistency
...
To be consistent with other get_elements_by_xxx methods.
2024-09-06 11:04:04 +05:00
Andrej730
a03c55d15f
fix poll breaking with no active object
2024-09-06 11:04:04 +05:00
Richard Brice
1a75d95d47
Updates dependencies for boost 1.86.0
2024-09-05 20:34:49 -07:00
Dion Moult
fe5f48c655
Positional elements, project, and spatial elements are now locked. Remove user option to change behaviour.
2024-09-06 12:09:06 +10:00
Dion Moult
a4396ee766
See #5318 . Prevent deletion of project or spatial structures.
2024-09-06 11:44:30 +10:00
Dion Moult
977f3c7dcc
Fix #5243 . Remove usage of types_with_super which is no longer available.
2024-09-06 10:38:19 +10:00
Bruno Perdigão
8ba52a2b1c
Scale the text for polyline tool decorators.
2024-09-05 14:18:12 -03:00
Bruno Perdigão
214c278fc5
Added a function to scale the font size according to preferences.
...
The scale will be calculated in relation to the system dpi and Blender's interface resolution scale.
2024-09-05 14:18:12 -03:00
Ryan Schultz
f521945766
Have bim.select_assigned_product make selected object active, so it's easier to change its Object Information
2024-09-05 10:09:35 -05:00
Thomas Krijnen
12318fbfc2
Handle storage of nullptr as a proper Blank type in variant #5308
2024-09-05 14:38:57 +02:00
Andrej730
56428eb605
Ooops, fix black formatter ignoring bonsai folder #5178
2024-09-05 17:19:15 +05:00
Andrej730
88319bfa57
Fix missing ifc2x3 tests for pset.edit_pset
2024-09-05 17:13:41 +05:00
Andrej730
cce4e426c3
util.get_pset to support ifc2x3 material props
2024-09-05 17:13:41 +05:00
Andrej730
7782ab5479
should_load_from_memory related poll messages
2024-09-05 15:38:32 +05:00
Andrej730
7e5bd0ca83
ifcwrap cmake - rebuild if .i files changed
2024-09-05 15:08:36 +05:00
Andrej730
051d5479fb
Strip redundant newline in repr() for taxonomy items
...
E.g.
print([m.diffuse for m in shape.geometry.materials])
would print
[colour 0.7 0.7 0.7
]
Instead of:
[colour 0.7 0.7 0.7]
2024-09-05 15:08:36 +05:00
Andrej730
deb41d2158
Geometry settings documentation fixes #5312
2024-09-05 15:08:35 +05:00
Andrej730
ea6df7f617
Use latest syntax for setting geometry settings #5299
...
Also fixed:
- old include_curves use
- missing use of 'include_curves' in ifcopenshell.draw
2024-09-05 15:08:35 +05:00
Andrej730
fcf41bf00c
fix typing issue
...
Overloads were breaking because type checker is confused what default value should it use for the argument.
Made it keyword-only to resolve the issue.
2024-09-05 15:04:17 +05:00
tim
7c3fbda01e
Updated icons
...
- new master svg file for storing icons bonsai_icons.svg
script for exporting png files and generating light mode versions
support for light mode
2024-09-05 09:21:15 +10:00
`myoualid`
d0712c7186
1/ WEB UI Cost Schedule features to :
...
- delete cost items
- duplicate cost items
- delete individual cost values
- update cost values on the fly
- Shitf + LMB to recursively hide or show nested rows
2/ Improved UI for cost schedules
3/ Reuse css styles across pages with import statements
4/ Remove console/print statements
2024-09-04 23:39:46 +01:00
Andrej730
e1a5e73106
black format
2024-09-04 18:52:09 +05:00
Andrej730
1282f5c308
geom.Iterate - fix incorrect typing, document some arguments #5299
2024-09-04 18:51:07 +05:00
Andrej730
b0eaf23d2c
Fix missing serializer_settings argument #5299
2024-09-04 18:51:07 +05:00
Andrej730
0ab70827e5
pset.assign_pset, pset.unassign_pset
2024-09-04 18:51:07 +05:00
Andrej730
691815fd41
Tools for handling shared psets #5291
...
In IFC it's possible for a property set to be assigned to multiple elements and which may lead to confusing behaviour when you edit a pset on one element and other element seems to get edited too.
Which makes it worse is that that it is possible that some software is might be doing this unintentionally when exporting IFC (as some sort of optimization as storing 1 is more optimal than n copies of it).
So now there are some tools in Bonsai and in IfcOpenShell to handle the shared psest:
1) Indication that property is shared - https://imgur.com/a/9dd3jST (similar to how Blender indicates ID data-block users). You can click on it to "unshare" the pset - a new copy for the pset will be created and it's going to be linked only to the active object.
2) api pset.unshare_pset method that does the same. And util.element.get_elements_using_pset method that encapsulates schema differences and different approaches for occurrences/types.
3) ifcpatch recipe 'UnsharePsets' that's making all property sets in the IFC file to have just 1 element that's using them. You can limit the affected elements by providing query.
ifcpatch recipe is also available in Bonsai - https://i.imgur.com/aOCx7HI.png
2024-09-04 18:51:06 +05:00
dependabot[bot]
3c3b56d1ae
Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows
...
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 2 to 4.1.7.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/v2...v4.1.7 )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-09-04 10:43:04 +10:00
htlcnn
116192befd
fix last point coincides with first point
2024-09-03 16:36:45 -03:00
Bruno Perdigão
b6a96828ec
Fix #5277
2024-09-03 16:23:32 -03:00
Ryan Schultz
c4c611d778
whoops
2024-09-03 13:21:48 -05:00
Ryan Schultz
290c08d6d5
updated links in docs
2024-09-03 13:18:55 -05:00
Thomas Krijnen
eb7411b310
ifcopenshell.file.assign_header_from() to copy header
2024-09-03 18:49:05 +02:00
Andrej730
bea837299e
root.reassign_class to handle switching occurrence class <-> type class #5260
...
Kind of experimental. The idea is that it will reassign class e.g. from IfcWindow to IfcWindowType (or vice versa) and will keep the IFC representations and property sets.
Example - https://imgur.com/a/X7MHR0s
2024-09-03 18:53:25 +05:00
Andrej730
acbdc0ed4c
typing
2024-09-03 18:53:25 +05:00
Andrej730
bec1d913c5
util.representation.get_representations_iter
2024-09-03 18:38:22 +05:00
Andrej730
b957505bfc
bim.add_xxxx descriptions
2024-09-03 18:38:22 +05:00
Andrej730
3c69fffb19
ifcopenshell.validate fix missing space in indentation 😅
2024-09-03 18:38:22 +05:00
Andrej730
1c7e7c5269
prohibit user from removing a profile that still has inverses #5101
...
To avoid creating invalid material profile sets, representation items. Currently the only inverse that is allowed before removal is profile properties.
Example - https://i.imgur.com/UobI4pL.png
2024-09-03 18:38:21 +05:00
Andrej730
92525db14f
profile.remove_profile - tests
2024-09-03 18:38:21 +05:00
Andrej730
01d965fe25
profile.remove_profile - clean up removing profile psets
2024-09-03 18:38:21 +05:00
Andrej730
d2bc6f9509
pset.add_pset - support ifc2x3 material/profile psets
...
1) For psets there was an issue - it was instantiating abstract IfcProfileProperties
2) For materials it was only able to instantiate IfcExtendedMaterialProperties though there are other pset types too in ifc2x3.
2024-09-03 18:38:21 +05:00
krande
88b861737c
if boost >= 1.86 append newline to json logger
2024-09-03 11:56:15 +02:00
Kristoffer Andersen
0f87bd8206
use a macro to change for boost > 1.86
2024-09-03 11:09:22 +02:00
Kristoffer Andersen
1fe168d331
Update IfcGlobalId.cpp to support boost 1.86
...
It looks like mt19937 is no longer a member of boost in boost 1.86. I propose we use to std::mt19937 (which is already how it is used by svgfill.cpp)
see failure log from conda forge libboost 1.86 test here:
https://dev.azure.com/conda-forge/feedstock-builds/_build/results?buildId=1008654&view=logs&j=4f922444-fdfe-5dcf-b824-02f86439ef14&t=b2a8456a-fb11-5506-ca32-5ccd32538dc0&l=880
2024-09-03 11:09:22 +02:00
Thomas Krijnen
a7925622ed
Handle nix patches for V7_7_2 #5285
2024-09-03 08:52:39 +00:00
Dion Moult
3675429385
Fix #2437 . You can now see the spatial hierarchy decomposed by classification.
2024-09-03 18:42:52 +10:00
Thomas Krijnen
44ab38cb24
Add V7_7_2.patch #5285
2024-09-03 10:01:44 +02:00
Thomas Krijnen
1a146ada48
Add V7_7_2.patch #5285
2024-09-03 09:57:02 +02:00
Dion Moult
2ed2b4fe71
Fix #5230 . Reimplement spatial decomposition hierarchy.
2024-09-03 14:36:01 +10:00
Dion Moult
4ce30b3153
See #5269 . Minor tweak to show warning if object scaling detected.
2024-09-03 12:52:57 +10:00
Dion Moult
4ce2251717
See #5269 . Minor tweak to show warning if manual mode changes detected.
2024-09-03 10:19:35 +10:00
Andrej730
c6e8d2a585
bim.add_material_set to ensure adding valid material sets
2024-09-02 18:41:15 +05:00
Andrej730
90e9c21320
material.add_profile note
2024-09-02 18:40:12 +05:00
Andrej730
236fbc7864
remove unused add_empty_type_button ui function
2024-09-02 17:25:04 +05:00
Andrej730
ae75acb0b9
Fix test after 521b0ab58d
2024-09-02 17:24:59 +05:00
Andrej730
11068fe338
bim.add_drawing_to_sheet - poll message
2024-09-02 17:24:59 +05:00
Andrej730
3c333c6b59
typing
2024-09-02 17:24:58 +05:00
Andrej730
ccbb253d2c
Fix new sheets having non-unique identification
...
It was checking for the wrong scope "DOCUMENTATION".
Scope "DOCUMENTATION" was left from the old times, now we use scope "SHEET".
2024-09-02 17:04:55 +05:00
Andrej730
7c542418e6
fix create sheet test failing if bonsai and tests are on different disks
...
It was failing on Windows with something like "ValueError: path is on mount 'L:', start on mount 'C:'".
I guess it doesn't really occur in bonsai as sheets are typically stored next to the titleblocks (we used to use absolute paths awhile ago and now everything is relative to the ifc project)
2024-09-02 17:04:55 +05:00
Andrej730
d77f57c68e
ifc.resolve_uri - remove redundant second check
...
os.path.isabs(uri) is already checked at the beginning of the function
2024-09-02 17:04:55 +05:00
Andrej730
151244ae79
ifcopenshell.file() to create valid ifc header by default #5246
...
Valid type for author and organization is 'LIST [ 1 : ? ] OF STRING (256)'
2024-09-02 17:04:55 +05:00
Andrej730
e50a90cc9f
ifcopenshell.validate return code 1 in case of some file is invalid
2024-09-02 17:04:54 +05:00
Andrej730
5f5ab10b35
ifcopenshell.validate to validate ifc header #4119
2024-09-02 17:04:54 +05:00
Andrej730
0e791c7dfd
Fix ifcopenshell.validate missing output in some cases after 07a0b4f
...
Apparently adding LogDetectionHandler disabled default handler that prints the output.
2024-09-02 17:04:54 +05:00
Dion Moult
07be50b365
See #5261 . Fix bug when editing parametric stairs (not stair flights) which sets an inapplicable predefined type
2024-09-02 21:23:06 +10:00
Dion Moult
fb422692c8
You can now make the selected element in the spatial decomposition panel active
2024-09-02 20:37:04 +10:00
Dion Moult
1a8be005cf
Fix bug where toggled openings didn't properly appear in the dedicated opening collection
2024-09-02 20:14:43 +10:00
Dion Moult
9dcb5b103c
Fix #5237 . Fix bug where flipping or splitting walls didn't take into account project units and voids were misplaced.
2024-09-02 20:14:30 +10:00
Dion Moult
091824910b
Increase debug log limit to 20
2024-09-02 19:42:26 +10:00
Dion Moult
ea6d5918ba
Fix bug where openings were invalidly contained in a container
2024-09-02 19:42:26 +10:00
Manu Varkey
a452d29bab
Fix bug: Add type instance button duplicated ( #5281 )
2024-09-02 19:37:08 +10:00
Dion Moult
fb803ac35d
Fix #5256 . Use layer collection visibility, not collection visibility to hide types.
2024-09-02 18:48:09 +10:00
Dion Moult
eec4b37827
See #5256 . Fix bug where old "Types" collection was still being created and unused.
2024-09-02 18:47:09 +10:00
Dion Moult
d1565ec1e6
Fix #5273 . Bug where Shift-E allowed you to edit non-roof/railing elements if you also had them selected.
2024-09-02 17:46:44 +10:00
Dion Moult
521b0ab58d
Fix #5271 . Prevent duplicate entries when getting a decomposition.
2024-09-02 17:35:49 +10:00
Thomas Krijnen
04bbfc04ad
Try 7.7.2 for HLR poly/edge behaviour
2024-09-02 09:20:38 +02:00
Thomas Krijnen
f0167b812a
Try 7.7.2 for HLR poly/edge behaviour
2024-09-02 09:19:46 +02:00
Dion Moult
0b8a701423
Fix #5275 . Fix bug where orthographic sections would appear over freestyle linework in perspective views.
2024-09-02 16:51:25 +10:00
Dion Moult
aa7e80fc8c
Fix #5276 . Fix inaccurate tooltip for assign container operator.
2024-09-02 16:40:51 +10:00
Bruno Perdigão
f48c7d6af5
Fix polytool issue with distance input while snapping above the xy plane.
2024-09-01 11:20:14 -03:00
Bruno Perdigão
977014b86a
Fix #5274
2024-09-01 10:48:16 -03:00
Bruno Perdigão
43e13ef8f3
Fix polytool issue when backspacing the whole input.
2024-09-01 10:38:03 -03:00
Thomas Krijnen
daba504981
Update draw.py - test for --drawing-guid existance
2024-09-01 15:33:52 +02:00
Thomas Krijnen
f8a2cce202
Use polygon_from_points() and handle Position for CSG Pyramid #5241
2024-09-01 15:14:22 +02:00
Thomas Krijnen
b786e129bd
Fix faceset helper stats
2024-09-01 15:12:43 +02:00
sukanka
b82073dd57
fix-py-syntax-warning
2024-09-01 14:02:24 +02:00
Thomas Krijnen
d4d9fdff1a
Fix and augment v0.8 taxonomy wrapper
2024-09-01 10:40:23 +02:00
Dion Moult
b3b14e87ec
Next release cycle!
2024-09-01 18:00:31 +10:00
Andrej730
6bc31105bf
Mention common error in troubleshooting docs
2024-09-01 11:10:13 +05:00
Dion Moult
73e3ebd1f0
Update README.md with new doc links
2024-09-01 16:08:45 +10:00
Dion Moult
32f216a594
Minor fix to bonsai-stable build
2024-09-01 14:23:29 +10:00
Dion Moult
296ebf5253
Fix failing tests in Bonsai
2024-09-01 14:08:52 +10:00
Cristian Ritter
a450c24739
Merge branch 'v0.8.0' of https://github.com/csritter/IfcOpenShell into v0.8.0
2024-08-26 15:34:55 -03:00
Cristian Ritter
56d19039e3
always apply in diffuse color, if doens't have surface color
...
Signed-off-by: Cristian Ritter <cristian_ritter@hotmail.com >
2024-08-26 15:34:50 -03:00
csritter
2b8124071a
Merge branch 'v0.8.0' into v0.8.0
2024-08-26 10:26:10 -03:00
Cristian Ritter
9fceec35cc
add diffuse on surface, if has no surface color
...
Signed-off-by: Cristian Ritter <cristian_ritter@hotmail.com >
2024-08-26 10:17:50 -03:00
csritter
ae2933eea5
prevent a copy
...
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com >
2024-08-26 01:08:06 -03:00
Cristian Ritter
7d50491a99
checking if diffuse has value, if not, use surface
...
Signed-off-by: Cristian Ritter <cristian_ritter@hotmail.com >
2024-08-20 12:16:19 -03:00
Cristian Ritter
371b4b6079
removing unnecessary use_surface_color on calc_hash
2024-08-20 11:45:29 -03:00
Cristian Ritter
d714eca4ee
replacing diffuse to get_color method
2024-08-20 11:44:20 -03:00
Cristian Ritter
cd3df94a4b
add surface and use_surface_color on style class
2024-08-19 18:44:43 -03:00
Cristian Ritter
0efafada1d
fixed missing SurfaceColour on SettingsContainer
2024-08-19 18:41:45 -03:00
Cristian Ritter
876f059459
remove surface white if doesn't have surface colour
...
Signed-off-by: Cristian Ritter <cristian_ritter@hotmail.com >
2024-08-15 14:18:13 -03:00
Cristian Ritter
b5a61753a5
Adding --surface-color in conversion settings to force the use of surface color instead of diffuse color. Issue #5075
2024-08-15 13:56:31 -03:00