07-24-2013 06:58 AM
I observed the following behaviour when using a non destructive boolean intersect on two bodies that were intersecting:
One of the bodies had an application-defined attribute (inherited from ATTRIB) on one of its faces.
During the boolean operation the attribute notification function replace_owner_geometry was called.
That makes me wonder since i expected the input bodies not to be changed - thus no notification should be triggered.
Can anybody explain that behaviour?
07-30-2013 01:38 PM
I think your observation could be true even though I may not happen in most of the scenarios. Non-destructive Booleans does an intelligent copy in order to use lesser memory. So, it does end up copying some portion of the input bodies as the operation demands. What I observed is, the replace_owner_geometry() would be called on the copied attributes - i.e. if the copy behavior of the application-defined attribute is to copy when owner is copied (refer: http://doc.spatial.com/index.php/Attribute_Notification_Methods#Predefined_Actions).
Do you see that the replace_owner_geometry() gets called on the original attributes during non-destructive Booleans? If the answer is yes, would it be possible to share the case through Support?