Biorbd
Public Member Functions | Protected Attributes | List of all members
biorbd::rigidbody::IMU Class Reference

Class IMU. More...

#include <IMU.h>

Inheritance diagram for biorbd::rigidbody::IMU:
biorbd::utils::RotoTransNode biorbd::utils::RotoTrans biorbd::utils::Node

Public Member Functions

 IMU (bool isTechnical=true, bool isAnatomical=true)
 Construct inertial measurement unit. More...
 
 IMU (const biorbd::utils::RotoTransNode &RotoTrans, bool isTechnical=true, bool isAnatomical=true)
 Construct inertial measurement unit data. More...
 
biorbd::rigidbody::IMU DeepCopy () const
 Deep copy of the IMU data. More...
 
void DeepCopy (const biorbd::rigidbody::IMU &other)
 Deep copy if the IMU data. More...
 
bool isTechnical () const
 Return if the IMU is technical. More...
 
bool isAnatomical () const
 Return if the IMU is anatomical. More...
 
- Public Member Functions inherited from biorbd::utils::RotoTransNode
 RotoTransNode ()
 Construct a RotoTransNode.
 
 RotoTransNode (const biorbd::utils::RotoTrans &rt, const biorbd::utils::String &name, const biorbd::utils::String &parentName)
 Construct a RotoTransNode. More...
 
biorbd::utils::RotoTransNode DeepCopy () const
 Deep copy of a RotoTransNode. More...
 
void DeepCopy (const biorbd::utils::RotoTransNode &other)
 Deep copy of a RotoTransNode into another RotoTransNode. More...
 
void operator= (const biorbd::utils::RotoTrans &other)
 operator= Matrix multiplication More...
 
biorbd::utils::RotoTrans operator* (const biorbd::utils::RotoTransNode &other) const
 operator* Matrix multiplication More...
 
- Public Member Functions inherited from biorbd::utils::RotoTrans
 RotoTrans (const RigidBodyDynamics::Math::Matrix4d &matrix=RigidBodyDynamics::Math::Matrix4d::Identity())
 Construct RotoTrans matrix. More...
 
 RotoTrans (const biorbd::utils::Scalar &v00, const biorbd::utils::Scalar &v01, const biorbd::utils::Scalar &v02, const biorbd::utils::Scalar &v03, const biorbd::utils::Scalar &v10, const biorbd::utils::Scalar &v11, const biorbd::utils::Scalar &v12, const biorbd::utils::Scalar &v13, const biorbd::utils::Scalar &v20, const biorbd::utils::Scalar &v21, const biorbd::utils::Scalar &v22, const biorbd::utils::Scalar &v23, const biorbd::utils::Scalar &v30, const biorbd::utils::Scalar &v31, const biorbd::utils::Scalar &v32, const biorbd::utils::Scalar &v33)
 RotoTrans Construct a RotoTrans matrix by elements. More...
 
 RotoTrans (const biorbd::utils::Rotation &rot)
 Contruct Rototrans. More...
 
 RotoTrans (const biorbd::utils::Rotation &rot, const biorbd::utils::Vector3d &trans)
 Contruct Rototrans. More...
 
 RotoTrans (const biorbd::utils::Vector &rotation, const biorbd::utils::Vector3d &translation, const biorbd::utils::String &rotationSequence)
 Contruct Rototrans. More...
 
 RotoTrans (const RigidBodyDynamics::Math::SpatialTransform &st)
 Contruct Rototrans. More...
 
biorbd::utils::Vector3d axe (unsigned int idx) const
 Get a particular axis of the rotation matrix. More...
 
biorbd::utils::RotoTrans transpose () const
 Return the tranposed matrix. More...
 
biorbd::utils::Vector3d trans () const
 Return the translation vector. More...
 
biorbd::utils::Rotation rot () const
 Return the rotation matrix. More...
 
- Public Member Functions inherited from biorbd::utils::Node
 Node ()
 Construct Node.
 
 Node (const biorbd::utils::Node &other)
 Construct Node from another node. More...
 
 Node (const biorbd::utils::String &name)
 Construct Node. More...
 
 Node (const biorbd::utils::String &name, const biorbd::utils::String &parentName)
 Construct Node. More...
 
virtual ~Node ()
 Destroy class properly.
 
void DeepCopy (const biorbd::utils::Node &other)
 Deep copy of the node in another node. More...
 
void setName (const biorbd::utils::String &name)
 Set the name of the node. More...
 
const biorbd::utils::Stringname () const
 Return the name of the node.
 
const biorbd::utils::Stringparent () const
 Return the parent name of the node.
 
void setParent (const biorbd::utils::String &name)
 Set the parent name of the node. More...
 
biorbd::utils::NODE_TYPE typeOfNode () const
 Return the type of node.
 

Protected Attributes

std::shared_ptr< bool > m_technical
 If a IMU is a technical IMU.
 
std::shared_ptr< bool > m_anatomical
 It IMU is a anatomical IMU.
 
- Protected Attributes inherited from biorbd::utils::Node
std::shared_ptr< biorbd::utils::Stringm_name
 The name of the node.
 
std::shared_ptr< biorbd::utils::Stringm_parentName
 The parent name of the node.
 
std::shared_ptr< biorbd::utils::NODE_TYPE > m_typeOfNode
 The type of the node.
 

Additional Inherited Members

- Static Public Member Functions inherited from biorbd::utils::RotoTrans
static biorbd::utils::RotoTrans fromMarkers (const biorbd::rigidbody::NodeSegment &origin, const std::pair< biorbd::rigidbody::NodeSegment, biorbd::rigidbody::NodeSegment > &axis1markers, const std::pair< biorbd::rigidbody::NodeSegment, biorbd::rigidbody::NodeSegment > &axis2markers, const std::pair< biorbd::utils::String, biorbd::utils::String > &axesNames, const biorbd::utils::String &axisToRecalculate)
 fromMarkers Creates a system of axes from two axes and an origin defined by markers More...
 
static biorbd::utils::RotoTrans combineRotAndTrans (const biorbd::utils::Rotation &rot, const biorbd::utils::Vector3d &trans)
 Set the RotoTrans from a rotation and a translation. More...
 
static biorbd::utils::RotoTrans fromSpatialTransform (const RigidBodyDynamics::Math::SpatialTransform &st)
 set the RotoTrans from a spatial transform More...
 
static biorbd::utils::RotoTrans fromEulerAngles (const biorbd::utils::Vector &rot, const biorbd::utils::Vector3d &trans, const biorbd::utils::String &seq)
 Create a RotoTrans from Euler angles. More...
 
static biorbd::utils::Vector toEulerAngles (const biorbd::utils::RotoTrans &rt, const biorbd::utils::String &seq)
 Return extracted angles from the rotation matrix into Euler angles using the provided sequence. More...
 
static biorbd::utils::RotoTrans mean (const std::vector< biorbd::utils::RotoTrans > &rt)
 Get the mean of the 4x4 matrices. More...
 
- Protected Member Functions inherited from biorbd::utils::RotoTransNode
void setType ()
 Set the type to ROTOTRANS.
 
- Protected Member Functions inherited from biorbd::utils::RotoTrans
RigidBodyDynamics::Math::Vector4d expand3dTo4d (const biorbd::utils::Vector3d &v1)
 Expand 3D vector to 4D (padding with an extra 1) More...
 
void checkUnitary ()
 Check if the RotoTrans has a unitary matrix of rotation and the last row is (0, 0, 0, 1) More...
 

Detailed Description

Class IMU.

Definition at line 21 of file IMU.h.

Constructor & Destructor Documentation

◆ IMU() [1/2]

biorbd::rigidbody::IMU::IMU ( bool  isTechnical = true,
bool  isAnatomical = true 
)

Construct inertial measurement unit.

Parameters
isTechnicalTrue if the IMU is a technical IMU
isAnatomicalTrue if the IMU is an anatomical IMU

Definition at line 6 of file IMU.cpp.

◆ IMU() [2/2]

biorbd::rigidbody::IMU::IMU ( const biorbd::utils::RotoTransNode RotoTrans,
bool  isTechnical = true,
bool  isAnatomical = true 
)

Construct inertial measurement unit data.

Parameters
RotoTransThe RotoTrans matrix attaching the IMU
isTechnicalTrue if the IMU is a technical IMU
isAnatomicalTrue if the IMU is an anatomical IMU

Definition at line 16 of file IMU.cpp.

Member Function Documentation

◆ DeepCopy() [1/2]

biorbd::rigidbody::IMU biorbd::rigidbody::IMU::DeepCopy ( ) const

Deep copy of the IMU data.

Returns
Copy of the IMU data

Definition at line 52 of file IMU.cpp.

◆ DeepCopy() [2/2]

void biorbd::rigidbody::IMU::DeepCopy ( const biorbd::rigidbody::IMU other)

Deep copy if the IMU data.

Parameters
otherThe IMU to copy

Definition at line 59 of file IMU.cpp.

◆ isAnatomical()

bool biorbd::rigidbody::IMU::isAnatomical ( ) const

Return if the IMU is anatomical.

Returns
If the IMU is anatomical

Definition at line 66 of file IMU.cpp.

◆ isTechnical()

bool biorbd::rigidbody::IMU::isTechnical ( ) const

Return if the IMU is technical.

Returns
If the IMU is technical

Definition at line 71 of file IMU.cpp.


The documentation for this class was generated from the following files: