Andrej730
a2ff63f9ec
Fix issue editing object placement that shares it's axis placement with other placements
...
If multiple object placements were reusing the same IfcAxis2Placement then editing one of them would remove IfcAxis2Placement ignoring it's inverse references making all other object placements invalid.
2024-02-16 18:04:09 +05:00
Andrej730
0da210b732
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
2023-11-23 13:43:39 +05:00
Andrej730
5481237480
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.
2023-08-17 13:18:27 +05: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
0eae3de6a2
Openings now move with the host by default. Small change, big impact.
2022-10-03 23:30:19 +11:00
Dion Moult
af1a40c913
Fix bug where if an object placement was reused elsewhere a circular reference was created
2022-08-30 20:08:50 +10:00
Dion Moult
53c050c6ed
Port locations now sync relative to their parent even when not actively displayed in the viewport
2022-05-05 18:00:42 +10:00
Dion Moult
a2c0045a40
Support relative object placements for IFC2X3 ports.
2022-02-01 18:23:55 +11:00
Dion Moult
3e10f52965
Relative placements for nested elements are now supported.
2022-02-01 17:39:55 +11:00
Dion Moult
810c71dfa2
IfcOpenShell-python licensing and black. See #1082 .
2022-01-19 12:18:33 +11:00
Dion Moult
3accc1dbd6
Editing object placements is now 3x faster on large files. See #1807 .
2021-11-29 19:58:03 +11:00
Dion Moult
18719c16df
Fix bug where subelement coordinates were incorrectly calculated in non SI units
2021-11-17 16:22:23 +11:00
Dion Moult
e17ae4ef61
Fix #1792 . Regression caused by other improvements in editing object placement.
2021-10-13 11:55:03 +11:00
Dion Moult
3eb7c7a6a1
Fix bug where assigning a new container would shift object placements incorrectly due to SI unit conversion
2021-09-17 17:13:20 +10:00
Dion Moult
2b82eaf019
Fix bug when shifting object placements and their children. Add support for specifying placement matrixes in project units or SI units.
2021-09-17 16:54:53 +10:00
Dion Moult
cfa0575263
Minor fix
2021-07-27 20:47:49 +10:00
Dion Moult
e68c57e9ef
Fix bug where reused placements (e.g. from copied objects) were all updated which led to incorrect locations
2021-07-19 20:16:07 +10:00
Dion Moult
edd737aa5d
Minor fix
2021-07-10 10:32:34 +10:00
Dion Moult
21c4433c75
Allow setting to toggle cascading of edited object placements
2021-07-08 18:00:41 +10:00
s-leger
65c2f9a038
Add support for rel_void / rel_fill / rel_project relative placement when editing object placements( #1471 )
...
* Add support for rel_void / rel_fill
* Fix relationships, and add support for projection elements
Co-authored-by: Dion Moult <dion@thinkmoult.com >
2021-05-18 09:46:15 +10:00
Dion Moult
ce03742aab
New ifcopenshell.api.run syntax, and rename create_product to create_entity. See #1399 .
2021-03-27 22:53:13 +11:00
Dion Moult
406b8b4540
IfcOpenShell API now uses kwargs to improve user syntax. See #1399 .
2021-03-27 19:14:46 +11:00
Dion Moult
074a8c287f
Support owner histories for a bunch more usecases. About half done.
2021-03-26 10:39:07 +11:00
Jesusbill
9c00872a57
replace settings=None with {}
2021-03-25 00:54:42 +01:00
Dion Moult
d77bc6bdaa
First attempt at ripping out agnostic code into ifcopenshell.api namespace. See #1399 .
2021-03-25 10:48:48 +11:00