|
mc_rtc
2.14.0
|
#include <mc_rbdyn/Frame.h>


Classes | |
| struct | NewFrameToken |
Public Member Functions | |
| Frame (NewFrameToken, const std::string &name) noexcept | |
| Frame (NewFrameToken, const std::string &name, Frame &parent, sva::PTransformd X_p_f, bool bake) noexcept | |
| virtual | ~Frame () |
| Frame (const Frame &)=delete | |
| Frame (Frame &&)=delete | |
| Frame & | operator= (const Frame &)=delete |
| Frame & | operator= (Frame &&)=delete |
| const std::string & | name () const noexcept |
| virtual sva::PTransformd | position () const noexcept |
| virtual sva::MotionVecd | velocity () const noexcept |
| Frame & | position (sva::PTransformd pos) noexcept |
| Frame & | velocity (sva::MotionVecd velocity) noexcept |
| const FramePtr & | parent () const noexcept |
| mc_tvm::Frame & | tvm_frame () const |
Public Member Functions inherited from mc_rtc::shared< Frame > | |
| operator std::shared_ptr< Frame > () | |
| operator std::shared_ptr< const Frame > () const | |
Static Public Member Functions | |
| static FramePtr | make (const std::string &name) noexcept |
| static FramePtr | make (const std::string &name, Frame &parent, sva::PTransformd X_p_f, bool baked) |
Protected Member Functions | |
| virtual void | init_tvm_frame () const |
Protected Attributes | |
| std::string | name_ |
| FramePtr | parent_ = nullptr |
| sva::PTransformd | position_ = sva::PTransformd::Identity() |
| sva::MotionVecd | velocity_ = sva::MotionVecd::Zero() |
| mc_tvm::FramePtr | tvm_frame_ |
Additional Inherited Members | |
Public Types inherited from mc_rtc::shared< Frame > | |
| using | ActualBase = typename std::conditional< std::is_same< void, void >::value, std::enable_shared_from_this< Frame >, void >::type |
Represents a frame
This frame is not necessarily associated to a robot as RobotFrame
Its position/velocity/acceleration properties are user-provided
|
noexcept |
Constructor for a frame with no parent
|
noexcept |
Constructor for a frame with a parent
|
virtual |
|
delete |
|
delete |
|
protectedvirtual |
Initialize the associated tvm Frame
|
inlinestaticnoexcept |
Creates a new frame with no parent
| name | Name of the frame |
|
static |
Creates a new frame with a parent. The frame is fixed relative to its parent
If parent is a RobotFrame then this function returns a RobotFrame
| name | Name of the new frame |
| parent | Parent frame |
| X_p_f | Transformation from the parent to the frame |
| baked | If true, don't keep track of the parent in the newly created frame |
| If | parent is actually a RobotFrame this creates a new frame name in RoboyFrame, this throws if name is alredy a frame in the robot |
|
inlinenoexcept |
Return the frame's name
|
inlinenoexcept |
Access the parent's frame (might be nullptr)
|
inlinevirtualnoexcept |
Compute the current (6D) frame's position in inertial frame
|
inlinenoexcept |
Update the frame's position
If this frame has no parent, this sets its absolute position.
Othewise, it sets the relative transformation from it's parent to itself
|
inline |
Access the associated TVM frame
|
inlinevirtualnoexcept |
Compute the current frame's velocity in inertial frame
|
inlinenoexcept |
Update the frame's velocity
If this frame has no parent this sets its absolute velocity.
Otherwise this is a no-op
|
protected |
Name of the frame
|
protected |
Direct parent of the frame (if any)
|
protected |
Absolute position for a frame with no parent, relative position otherwise
|
mutableprotected |
|
protected |
Absolute velocity for a frame with no parent, unused otherwise