Drake
FixedOffsetFrame< T > Class Template Referencefinal

FixedOffsetFrame represents a material frame F whose pose is fixed with respect to a parent material frame P. More...

#include <drake/multibody/multibody_tree/fixed_offset_frame.h>

Inheritance diagram for FixedOffsetFrame< T >:
[legend]
Collaboration diagram for FixedOffsetFrame< T >:
[legend]

Public Member Functions

 FixedOffsetFrame (const Frame< T > &P, const Isometry3< double > &X_PF)
 Creates a material Frame F whose pose is fixed with respect to its parent material Frame P. More...
 
 FixedOffsetFrame (const Body< T > &bodyB, const Isometry3< double > &X_BF)
 Creates a material Frame F whose pose is fixed with respect to the BodyFrame B of the given Body, which serves as F's parent frame. More...
 
Isometry3< T > CalcPoseInBodyFrame (const systems::Context< T > &context) const override
 Returns the pose X_BF of this frame F in the body frame B associated with this frame. More...
 
Does not allow copy, move, or assignment
 FixedOffsetFrame (const FixedOffsetFrame &)=delete
 
FixedOffsetFrameoperator= (const FixedOffsetFrame &)=delete
 
 FixedOffsetFrame (FixedOffsetFrame &&)=delete
 
FixedOffsetFrameoperator= (FixedOffsetFrame &&)=delete
 
- Public Member Functions inherited from Frame< T >
const Body< T > & get_body () const
 Returns a const reference to the body associated to this Frame. More...
 
virtual Isometry3< T > CalcOffsetPoseInBody (const systems::Context< T > &context, const Isometry3< T > &X_FQ) const
 Given the offset pose X_FQ of a frame Q in this frame F, this method computes the pose X_BQ of frame Q in the body frame B to which this frame is attached. More...
 
template<typename ToScalar >
std::unique_ptr< Frame< ToScalar > > CloneToScalar (const MultibodyTree< ToScalar > &tree_clone) const
 NVI to DoCloneToScalar() templated on the scalar type of the new clone to be created. More...
 
 Frame (const Frame &)=delete
 
Frameoperator= (const Frame &)=delete
 
 Frame (Frame &&)=delete
 
Frameoperator= (Frame &&)=delete
 

Protected Member Functions

Methods to make a clone templated on different scalar types.

These methods provide implementations to the different overrides of Frame::DoCloneToScalar().

The only const argument to these methods is the new MultibodyTree clone under construction, which is required to already own the clone to the parent frame of the frame being cloned.

std::unique_ptr< Frame< double > > DoCloneToScalar (const MultibodyTree< double > &tree_clone) const override
 
std::unique_ptr< Frame< AutoDiffXd > > DoCloneToScalar (const MultibodyTree< AutoDiffXd > &tree_clone) const override
 
- Protected Member Functions inherited from Frame< T >
 Frame (const Body< T > &body)
 Only derived classes can use this constructor. More...
 

Detailed Description

template<typename T>
class drake::multibody::FixedOffsetFrame< T >

FixedOffsetFrame represents a material frame F whose pose is fixed with respect to a parent material frame P.

The pose offset is given by a spatial transform X_PF, which is constant after construction. For instance, we could rigidly attach a frame F to move with a rigid body B at a fixed pose X_BF, where B is the BodyFrame associated with body B. Thus, the World frame pose X_WF of a FixedOffsetFrame F depends only on the World frame pose X_WP of its parent P, and the constant pose X_PF, with X_WF=X_WP*X_PF.

For more information about spatial transforms, see Spatial Pose and Transform.

Template Parameters
TThe scalar type. Must be a valid Eigen scalar.

Constructor & Destructor Documentation

FixedOffsetFrame ( const FixedOffsetFrame< T > &  )
delete
FixedOffsetFrame ( FixedOffsetFrame< T > &&  )
delete
FixedOffsetFrame ( const Frame< T > &  P,
const Isometry3< double > &  X_PF 
)

Creates a material Frame F whose pose is fixed with respect to its parent material Frame P.

The pose is given by a spatial transform X_PF; see class documentation for more information.

Parameters
[in]PThe frame to which this frame is attached with a fixed pose.
[in]X_PFThe default transform giving the pose of F in P, therefore only the value (as an Isometry3<double>) is provided.
FixedOffsetFrame ( const Body< T > &  bodyB,
const Isometry3< double > &  X_BF 
)

Creates a material Frame F whose pose is fixed with respect to the BodyFrame B of the given Body, which serves as F's parent frame.

The pose is given by a spatial transform X_BF; see class documentation for more information.

Parameters
[in]bodyBThe body whose BodyFrame B is to be F's parent frame.
[in]X_BFThe transform giving the pose of F in B.

Here is the call graph for this function:

Member Function Documentation

Isometry3<T> CalcPoseInBodyFrame ( const systems::Context< T > &  context) const
inlineoverridevirtual

Returns the pose X_BF of this frame F in the body frame B associated with this frame.

In particular, if this is the body frame B, this method directly returns the identity transformation.

Implements Frame< T >.

Here is the call graph for this function:

std::unique_ptr< Frame< double > > DoCloneToScalar ( const MultibodyTree< double > &  tree_clone) const
overrideprotectedvirtual
Precondition
The parent frame to this frame already has a clone in tree_clone.

Implements Frame< T >.

Here is the caller graph for this function:

std::unique_ptr< Frame< AutoDiffXd > > DoCloneToScalar ( const MultibodyTree< AutoDiffXd > &  tree_clone) const
overrideprotectedvirtual
Precondition
The parent frame to this frame already has a clone in tree_clone.

Implements Frame< T >.

FixedOffsetFrame& operator= ( const FixedOffsetFrame< T > &  )
delete
FixedOffsetFrame& operator= ( FixedOffsetFrame< T > &&  )
delete

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