Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvements to ReferentialSkeleton #557

Merged
merged 6 commits into from
Nov 20, 2015
Merged

Conversation

mxgrey
Copy link
Member

@mxgrey mxgrey commented Nov 16, 2015

This pull request is in response to issues #548 and #556. This fixes the issue where BodyNodes with zero-dof parent Joints will be left out of ReferentialSkeletons, and it allows users to add and remove BodyNodes and DegreesOfFreedom from Groups freely (i.e. without any coupling between BodyNodes and their parent DegreesOfFreedom).

However, in the current implementation there is still a 1-to-1 correspondence between BodyNodes and Joints, even though BodyNodes are decoupled from DegreesOfFreedom. What this means is that ReferentialSkeleton::getJoint(i) is always equivalent to ReferentialSkeleton::getBodyNode(i)->getParentJoint(). This is despite the fact that there is no coupling between ReferentialSkeleton::getBodyNode(~) and ReferentialSkeleton::getDof(~).

So I before this pull request can be considered finished, I'd like to pose the question: Should getBodyNode(~) be decoupled from getJoint(~) for ReferentialSkeletons, or is the current setup okay as it is?

I should also note that this pull request introduces a few changes to the behavior of the API of the Group class as a consequence of the decoupling. I hope that this does not result in any headaches for the existing users of Group.

@mxgrey
Copy link
Member Author

mxgrey commented Nov 18, 2015

The latest commit decouples the Joints in a Group from the BodyNodes in the Group as per the discussion in #548.

However, I should write some unit tests to test out these new features.

@mxgrey
Copy link
Member Author

mxgrey commented Nov 18, 2015

I've created unit tests for the new Group features. I believe this pull request is finished, unless someone spots an issue somewhere.

@jslee02
Copy link
Member

jslee02 commented Nov 19, 2015

👍 Looks good to me.

@jslee02 jslee02 added this to the DART 6.0.0 milestone Nov 19, 2015
jslee02 added a commit that referenced this pull request Nov 20, 2015
@jslee02 jslee02 merged commit 0dee940 into master Nov 20, 2015
@jslee02 jslee02 deleted the grey/ReferentialSkeleton branch January 31, 2016 02:53
@jslee02 jslee02 restored the grey/ReferentialSkeleton branch January 31, 2016 02:53
@mxgrey mxgrey deleted the grey/ReferentialSkeleton branch February 1, 2016 04:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants