Fix incorrect initialization of _listNonCollidingLinksWhenGrabbed when other grabbed bodies are modified before Grabbed::ComputeListNonCollidingLinks. #1324
The lazy initialization of Grabbed::_listNonCollidingLinksWhenGrabbed was relying on the state savers including Save_GrabbedBodies generated on creation of the Grabbed instance
Grabbed bodies by the grabber and the grabbed body can be changed / recreated after the Grabbed instance is created and before the initialization of _listNonCollidingLinksWhenGrabbed is triggered and resulted in incorrect _listNonCollidingLinksWhenGrabbed.
change
changed to use the current grabbed bodies when the initialization of _listNonCollidingLinksWhenGrabbed is triggered.
test
added reproduction to testopenrave:fixNonCollidingLinksWhenGrabbedShuffle20231027
description of the issue
Grabbed::_listNonCollidingLinksWhenGrabbed
was relying on the state savers includingSave_GrabbedBodies
generated on creation of theGrabbed
instanceGrabbed
instance is created and before the initialization of_listNonCollidingLinksWhenGrabbed
is triggered and resulted in incorrect_listNonCollidingLinksWhenGrabbed
.change
_listNonCollidingLinksWhenGrabbed
is triggered.test
testopenrave:fixNonCollidingLinksWhenGrabbedShuffle20231027
@Puttichai