Andrej730
b6b0e958b5
style.add_surface_texture to work without blender material provided
2024-04-16 11:16:07 +02:00
Andrej730
518f054cbd
edit_object_placement optimization for objects with subchildren #4035
...
1) We were iterating over same subchildren 2 or more times.
2) There is no need to change subchildren position at all since their parent position is already adjusted.
Explained here in detail - https://github.com/IfcOpenShell/IfcOpenShell/issues/4035#issuecomment-1822824352
2024-04-16 11:05:27 +02:00
Andrej730
6fd629f707
Fixed issue reassigning class to type class with userdefined type #4018
...
When PredefinedType is not found in the related enum reassign_class is considering it USERDEFINED and trying to set .ObjectType. The problem was it was doing for type classes also, when it should have set .ElementType instead.
Why it crashed BlenderBIM - in IfcClassData.data["has_entity"] we store currently active IFC entity which is recreated during `ifcopenshell.util.schema.reassign_class` making old entity invalid. Since `root.reassign_class` was failing in the process, related BBIM operator was failing too, IfcClassData wasn't updated and removed entity was accessed from UI leading to crash.
2024-04-16 11:05:27 +02:00
Andrej730
1c002c6845
minor fixes
...
- error in settings poll message for bim.assign_selected_as_product
- test that drawing.assign_product won't create new assignments for the same product
2024-04-16 11:05:26 +02:00
Andrej730
944f8695c7
root.remove_product to remove IfcRelFlowControlElements
2024-04-16 11:05:25 +02:00
Andrej730
72b3f1e967
api for assigning/unassigning flow controls #3981
2024-04-16 11:05:25 +02:00
Andrej730
1bb5a14b65
Fixed typo in control.assign_control, added tests
2024-04-16 11:05:25 +02:00
Dion Moult
142968559d
Minor fix
2024-04-16 11:05:24 +02:00
Dion Moult
7f1a500445
Fix #3957 . Fix bug where shared properties were not edited independently.
2024-04-16 11:05:24 +02:00
Andrej730
bc9fc0b462
Forgot to fix test after 35d66f5
2024-04-16 11:04:29 +02:00
Andrej730
3c49dd15f7
localize mathutils dependency in tests #3895
...
replaced shapebuilder with general ifcopenshell code in `test_add_boolean` (the only place besides `test_shape_builder` where it was used), that way mathutils dependency in tests is localized only to `test_shape_builder.py`.
added test-safe option to makefile, so github workflow would ignore `test_shape_builder` tests for now and it wouldn't interrupt the entire workflow
2024-04-16 11:04:28 +02:00
Andrej730
f8a2946355
Support other voiding IfcFeatureElementSubtraction elements #3889
...
Support other voiding IfcFeatureElementSubtraction besides IfcOpeningElement.
2024-04-16 11:03:55 +02:00
Andrej730
739b793cd7
test for model.get_manual_booleans() #3709
...
added test that model.get_manual_booleans will ignore IfcBooleanClippings until we find some other solution to distinguish automatic and manual clippings. And some refactor along the way.
2024-04-16 10:55:56 +02:00
Andrej730
34a881da3a
Remove orphaned IfcPropertyEnumeration
...
Noticed a couple hundreds of orphaned IfcPropertyEnumeration in my .ifc like below 😁
IFCPROPERTYENUMERATION('Status',(IFCLABEL('NEW'),IFCLABEL('EXISTING'),IFCLABEL('DEMOLISH'),IFCLABEL('TEMPORARY'),IFCLABEL('OTHER'),IFCLABEL('NOTKNOWN'),IFCLABEL('UNSET')),$);
2024-04-16 10:37:16 +02:00
Dion Moult
1c016c4212
See #3581 . Fix failing IOS tests.
2024-04-16 10:25:01 +02:00
Andrej730
c2013a172f
geometry.edit_object_placement was producing orphaned placements
...
It was producing orphaned IfcLocalPlacement if placement was parent to some other one. During edit_object_placement we were replacing all parent references with the new placement but wasn't removing the old one.
2024-04-16 10:24:57 +02:00
Andrej730
4fe03230c5
root.copy_class to remove connections from previously connected ports
2024-04-16 10:24:55 +02:00
Andrej730
ce91e04166
Remove empty IfcDocumentInformationRelationship #3581
2024-04-16 10:24:55 +02:00
Andrej730
040cd398cf
remove_product to also remove psets for types
2024-04-16 10:24:53 +02:00
Andrej730
1a88191173
remove_product to remove object placement too
...
previously it wasn't deleting object placement when you removed the objects (and related elements like IfcDirections etc) and working on project long enough you might had a bunch of orphaned data in it
2024-04-16 10:10:51 +02:00
Andrej730
25ec0ee36c
root.remove_product to remove IfcRelConnectsPorts too
...
previously if you deleted some flow segment that was connected to another the connection would stay resulting in invalid ifc and other bugs
2024-04-16 10:10:51 +02:00
Andrej730
d42aa7d8cb
root.remove_product fix
2024-04-16 10:05:48 +02:00
Andrej730
a5dedbedbb
oops, forgot to clean up the test name
2024-04-16 10:05:48 +02:00
Andrej730
38dd5a218c
root.copy_class to support copying ports in ifc2x3
2024-04-16 10:05:48 +02:00
Andrej730
661441b231
remove_product to remove IfcRelConnectsElements
2024-04-16 10:05:48 +02:00
Thomas Krijnen
a7b10a2880
Add test
2024-04-15 12:04:44 +02:00
Dion Moult
c615f7469a
See #1676 . You can now duplicate space boundaries.
2024-04-15 09:56:37 +02:00
Dion Moult
a863c6d68e
See #1676 . Deleting space boundaries now also removes connection geometry.
2024-04-15 09:56:37 +02:00
Dion Moult
eea93265f7
Fix #2913 . Bug where properties with multiple inverses were not correctly purged.
2024-04-15 09:37:49 +02:00
Dion Moult
e3979cadc7
Fix #2974 . Type property sets are now properly copied.
2024-04-15 09:37:48 +02:00
Dion Moult
fd989733c7
Fix bug where unassigning a document was too aggressive and deleted relationships where it shouldn't.
2024-04-15 09:25:50 +02:00
Dion Moult
4bd9515bf5
Fix #2924 . IfcElements default to a null predefined type so they can inherit where possible.
2024-04-15 09:25:48 +02:00
Dion Moult
fab76bbcde
Fixed bug where enumeration values in psets could be empty lists.
2023-03-27 23:08:47 +11:00
Dion Moult
e9a3630595
Fix #2898 . You can now copy materials from the materials tab.
2023-03-26 19:04:32 +11:00
Dion Moult
346071185f
Fix bug where appending a product from a library which had relationships to types caused a bunch of types to be pulled in unintentionally
2023-03-24 20:53:55 +11:00
Dion Moult
00fc71dcbe
Fix #2837 . Shared subelements mistakenly caused the subelement append loop to break early. The solution is to traverse one level at a time.
2023-03-24 17:36:46 +11:00
Dion Moult
b6aa5c57c0
Fix bug where copying types with parametric materials could lead to invalidly reused material set items.
2023-03-20 20:40:11 +11:00
Carlos Villagrasa
d89a8520a9
Added a test for pset custom IfcUnits
2023-03-19 22:23:36 +01:00
Dion Moult
cfd857233c
Fix #2864 . Fix bug where element containment was invalidly prioritised over voids and fills in relative placement.
2023-03-19 18:46:34 +11:00
Dion Moult
3da718a6d1
Fix bug where removing objects could leave orphaned annotation relationships
2023-03-19 15:17:26 +11:00
Dion Moult
ae09adf854
Fix #2424 . Bug where indirect assets (e.g. importing a type using a material) with relationships had their relationships duplicated
2023-02-24 13:01:26 +11:00
Dion Moult
2429f507ad
Fix #2785 . Fix bug where invalid models from Revit that reused material usages could create invalid models.
2023-02-21 13:48:24 +11:00
Dion Moult
03a66d2806
Fix #2787 . Fix creating invalid orphaned property and group relationships when removing systems / groups / elements.
2023-02-21 10:59:47 +11:00
Dion Moult
88bddb9531
See #2520 . You can now duplicate drawings.
2023-02-08 12:29:49 +11:00
Dion Moult
ccd7db06f8
Fix #2611 . Address multiple situations in the UI where the users could create invalid material data without an indication that it is invalid.
2023-02-05 17:10:25 +11:00
Dion Moult
f72d48aab5
Fix bug where calendar caching meant invalid duration calculations if you edited your calendar after a date calculation.
2023-02-03 10:06:55 +11:00
Dion Moult
efc3a692cb
Fix #2726 .
2023-01-29 12:27:50 +11:00
Dion Moult
6a2307308c
Fix bug where copying objects with profiles should only share profiles if the profile is named.
2023-01-28 21:51:00 +11:00
Dion Moult
360b9956c0
Fix failing tests from refactor which I really should've done before the release
2023-01-09 11:00:46 +11:00
Dion Moult
d386a884aa
You can now purge properties explicitly instead of setting them to None
2023-01-05 17:37:40 +11:00