You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If cloning of env/kinbody when _listNonCollidingLinksValid is false, Grabbed::_pGrabbedSaver and Grabbed:_pGrabberSaver are different between original env and cloned env.
Thus, the computed _listNonCollidingLinks in the original env is different from the one from the cloned env.
We need to restore the saver's information somehow when cloning.
- Issue
- When the new Grabbed instance is created in saver or Clone, the _pGrabbedSaver and _pGrabberSaver of the new Grabbed are different from those of the original Grabbed.
- Thus, if isListNonCollidingLinksValid=false, wrong state was used in ComputeListNonCollidingLinks.
- Resolution
- Copy the consistent states from the original Grabbed to the new Grabbed.
- To do so, introduce the constructor of Grabbed to copy the saver states from the original Grabbed. In addition, introduce the constructor of StateSavers to copy the states from the original savers.
- If the states are not copy-able, throw exception. Also, this API is very advanced and not expected to be used from the usual users. Thus, make such functionality as the constructor.
If cloning of env/kinbody when _listNonCollidingLinksValid is false,
Grabbed::_pGrabbedSaver
andGrabbed:_pGrabberSaver
are different between original env and cloned env.Thus, the computed
_listNonCollidingLinks
in the original env is different from the one from the cloned env.We need to restore the saver's information somehow when cloning.
cc: @Puttichai
The text was updated successfully, but these errors were encountered: