Package org.robwork.sdurw
Class InertiaMatrixd
- java.lang.Object
- 
- org.robwork.sdurw.InertiaMatrixd
 
- 
 public class InertiaMatrixd extends java.lang.ObjectA 3x3 inertia matrix
- 
- 
Constructor SummaryConstructors Constructor Description InertiaMatrixd()constructor - where only the diagonal is set
 
 InertiaMatrixd(double i)constructor - where only the diagonal is setInertiaMatrixd(double i, double j)constructor - where only the diagonal is setInertiaMatrixd(double i, double j, double k)constructor - where only the diagonal is setInertiaMatrixd(double r11, double r12, double r13, double r21, double r22, double r23, double r31, double r32, double r33)Constructs an initialized 3x3 rotation matrix
 InertiaMatrixd(long cPtr, boolean cMemoryOwn)InertiaMatrixd(EigenMatrix3d r)Construct an internal matrix from a Eigen::MatrixBase
 It is the responsibility of the user that 3x3 matrix is indeed an
 inertia matrix.InertiaMatrixd(Vector3Dd i, Vector3Dd j, Vector3Dd k)Constructs an initialized 3x3 rotation matrix
 \robabx{a}{b}{\mathbf{R}} = \left[ \begin{array}{ccc} \robabx{a}{b}{\mathbf{i}} \robabx{a}{b}{\mathbf{j}} \robabx{a}{b}{\mathbf{k}} \end{array} \right]
 
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description InertiaMatrixdadd(InertiaMatrixd I2)Calculates the addition between the two InertiaMatricesvoiddelete()EigenMatrix3de()Returns reference to the internal 3x3 matrixdoubleget(long row, long column)static longgetCPtr(InertiaMatrixd obj)static InertiaMatrixdmakeCuboidInertia(double mass, double x, double y, double z)calculates the inertia of a cuboid where the reference frame is in the
 center of the cuboid withstatic InertiaMatrixdmakeHollowSphereInertia(double mass, double radi)Make inertia matrix for a hollow sphere.static InertiaMatrixdmakeSolidSphereInertia(double mass, double radi)Make inertia matrix for a solid sphere.InertiaMatrixdmultiply(Rotation3Dd bRc)Calculates \robabx{a}{c}{\mathbf{R}} = \robabx{a}{b}{\mathbf{R}} \robabx{b}{c}{\mathbf{R}}
 Vector3Ddmultiply(Vector3Dd bVc)Calculates \robabx{a}{c}{\mathbf{v}} = \robabx{a}{b}{\mathbf{R}} \robabx{b}{c}{\mathbf{v}}voidset(long row, long column, double d)java.lang.StringtoString()
 
- 
- 
- 
Constructor Detail- 
InertiaMatrixdpublic InertiaMatrixd(long cPtr, boolean cMemoryOwn)
 - 
InertiaMatrixdpublic InertiaMatrixd(double r11, double r12, double r13, double r21, double r22, double r23, double r31, double r32, double r33)Constructs an initialized 3x3 rotation matrix
 - Parameters:
- r11- r_{11}
- r12- r_{12}
- r13- r_{13}
- r21- r_{21}
- r22- r_{22}
- r23- r_{23}
- r31- r_{31}
- r32- r_{32}
- r33- r_{33}
 
 \mathbf{R} = \left[ \begin{array}{ccc} r_{11} r_{12} r_{13} \\ r_{21} r_{22} r_{23} \\ r_{31} r_{32} r_{33} \end{array} \right]
 
 - 
InertiaMatrixdpublic InertiaMatrixd(Vector3Dd i, Vector3Dd j, Vector3Dd k) Constructs an initialized 3x3 rotation matrix
 \robabx{a}{b}{\mathbf{R}} = \left[ \begin{array}{ccc} \robabx{a}{b}{\mathbf{i}} \robabx{a}{b}{\mathbf{j}} \robabx{a}{b}{\mathbf{k}} \end{array} \right]
 - Parameters:
- i- \robabx{a}{b}{\mathbf{i}}
- j- \robabx{a}{b}{\mathbf{j}}
- k- \robabx{a}{b}{\mathbf{k}}
 
 - 
InertiaMatrixdpublic InertiaMatrixd(double i, double j, double k)constructor - where only the diagonal is set- Parameters:
- i- [in] m(0,0)
- j- [in] m(1,1)
- k- [in] m(2,2)
 
 - 
InertiaMatrixdpublic InertiaMatrixd(double i, double j)constructor - where only the diagonal is set- Parameters:
- i- [in] m(0,0)
- j- [in] m(1,1)
 
 - 
InertiaMatrixdpublic InertiaMatrixd(double i) constructor - where only the diagonal is set- Parameters:
- i- [in] m(0,0)
 
 
 - 
InertiaMatrixdpublic InertiaMatrixd() constructor - where only the diagonal is set
 
 
 - 
InertiaMatrixdpublic InertiaMatrixd(EigenMatrix3d r) Construct an internal matrix from a Eigen::MatrixBase
 It is the responsibility of the user that 3x3 matrix is indeed an
 inertia matrix.
 
- 
 - 
Method Detail- 
getCPtrpublic static long getCPtr(InertiaMatrixd obj) 
 - 
deletepublic void delete() 
 - 
epublic EigenMatrix3d e() Returns reference to the internal 3x3 matrix
 - 
multiplypublic InertiaMatrixd multiply(Rotation3Dd bRc) Calculates \robabx{a}{c}{\mathbf{R}} = \robabx{a}{b}{\mathbf{R}} \robabx{b}{c}{\mathbf{R}}
 - Parameters:
- bRc- [in] \robabx{b}{c}{\mathbf{R}}
 
- Returns:
- \robabx{a}{c}{\mathbf{R}}
 
 - 
addpublic InertiaMatrixd add(InertiaMatrixd I2) Calculates the addition between the two InertiaMatrices
 - 
multiplypublic Vector3Dd multiply(Vector3Dd bVc) Calculates \robabx{a}{c}{\mathbf{v}} = \robabx{a}{b}{\mathbf{R}} \robabx{b}{c}{\mathbf{v}}- Parameters:
- bVc- [in] \robabx{b}{c}{\mathbf{v}}
- Returns:
- \robabx{a}{c}{\mathbf{v}}
 
 - 
makeSolidSphereInertiapublic static InertiaMatrixd makeSolidSphereInertia(double mass, double radi) Make inertia matrix for a solid sphere.- Parameters:
- mass- [in] mass of solid sphere.
- radi- [in] radius of sphere.
- Returns:
- the inertia matrix.
 
 - 
makeHollowSphereInertiapublic static InertiaMatrixd makeHollowSphereInertia(double mass, double radi) Make inertia matrix for a hollow sphere.- Parameters:
- mass- [in] mass of hollow sphere.
- radi- [in] radius of sphere.
- Returns:
- the inertia matrix.
 
 - 
makeCuboidInertiapublic static InertiaMatrixd makeCuboidInertia(double mass, double x, double y, double z) calculates the inertia of a cuboid where the reference frame is in the
 center of the cuboid with- Parameters:
- mass-
- x-
- y-
- z-
- Returns:
 
 - 
toStringpublic java.lang.String toString() - Overrides:
- toStringin class- java.lang.Object
 
 - 
getpublic double get(long row, long column)
 - 
setpublic void set(long row, long column, double d)
 
- 
 
-