dart icon indicating copy to clipboard operation
dart copied to clipboard

Inertia class

Open jslee02 opened this issue 11 years ago • 3 comments

BodyNode has multiple functionalities and it makes the API complex. Inertia will take mass, moment of inertia, and center of mass properties from BodyNode.

  • [x] Deprecate APIs related to inertia properties in BodyNode
  • [ ] Add API for the transformation from the body frame to the inertial frame in Inertia
  • [x] Add API that returns moment of inertia as (3x3) matrix in Inertia
  • [x] Add API that returns spatial inertia as (6x6) matrix in Inertia
  • [x] Add API that set and get each component of moment of inertia as scalar in Inertia

jslee02 avatar Sep 06 '14 21:09 jslee02

Inertia class is added in #369.

jslee02 avatar Jul 03 '15 23:07 jslee02

I didn't close this yet, because we currently don't have an API that handles the transformation of the spatial inertia matrices. I don't think it would be hard to implement, I just haven't nailed down an API design that seems ideal to me yet.

I have two ideas so far. Let's say you want to transform from Frame current to Frame target. We could either do:

(1) Take in both frames as arguments:

inertia->transform(current, target);

(2) Or just take in a single transform and assume that the user is passing in the correct transform:

inertia->transform( target->getTransform(current) );

I'm not sure which would be preferable, but I'm leaning towards the latter. I'm also open to alternatives.

mxgrey avatar Jul 03 '15 23:07 mxgrey

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Feb 13 '18 19:02 stale[bot]