Screw Class Reference

One mobility -- coordinated rotation and translation along the common z axis of the inboard and outboard mobilizer frames. More...

#include <MobilizedBody.h>

Inheritance diagram for Screw:
MobilizedBody PIMPLHandle< MobilizedBody, MobilizedBodyImpl, true >

List of all members.

Public Member Functions

 Screw (Real pitch, Direction=Forward)
 Screw (MobilizedBody &parent, const Body &, Real pitch, Direction=Forward)
 By default the parent body frame and the body's own frame are used as the inboard and outboard mobilizer frames, resp.
 Screw (MobilizedBody &parent, const Transform &inbFrame, const Body &, const Transform &outbFrame, Real pitch, Direction=Forward)
 Use this constructor to specify mobilizer frames which are not coincident with the body frames.
ScrewaddBodyDecoration (const Transform &X_BD, const DecorativeGeometry &g)
 Add decorative geometry specified relative to the new (outboard) body's reference frame B, or to the outboard mobilizer frame M attached to body B, or to the inboard mobilizer frame F attached to the parent body P.
ScrewaddOutboardDecoration (const Transform &X_MD, const DecorativeGeometry &g)
 Add decorative geometry specified relative to the outboard mobilizer frame M attached to body B.
ScrewaddInboardDecoration (const Transform &X_FD, const DecorativeGeometry &g)
 Add decorative geometry specified relative to the inboard mobilizer frame F attached to the parent body P.
ScrewsetDefaultInboardFrame (const Transform &X_PF)
 Change this mobilizer's frame F on the parent body P.
ScrewsetDefaultOutboardFrame (const Transform &X_BM)
 Change this mobilizer's frame M fixed on this (the outboard) body B.
ScrewsetDefaultPitch (Real pitch)
Real getDefaultPitch () const
ScrewsetDefaultQ (Real)
Real getDefaultQ () const
Real getQ (const State &) const
Real getQDot (const State &) const
Real getQDotDot (const State &) const
Real getU (const State &) const
Real getUDot (const State &) const
void setQ (State &, Real) const
void setU (State &, Real) const
Real getMyPartQ (const State &, const Vector &qlike) const
Real getMyPartU (const State &, const Vector &ulike) const
Real & updMyPartQ (const State &, Vector &qlike) const
Real & updMyPartU (const State &, Vector &ulike) const
 SimTK_INSERT_DERIVED_HANDLE_DECLARATIONS (Screw, ScrewImpl, MobilizedBody)

Detailed Description

One mobility -- coordinated rotation and translation along the common z axis of the inboard and outboard mobilizer frames.

A "pitch" is specified relating the two. The generalized coordinate q is the rotation angle in radians, the translation is always pitch*q.


Constructor & Destructor Documentation

Screw ( Real  pitch,
Direction  = Forward 
) [explicit]
Screw ( MobilizedBody parent,
const Body ,
Real  pitch,
Direction  = Forward 
)

By default the parent body frame and the body's own frame are used as the inboard and outboard mobilizer frames, resp.

Screw ( MobilizedBody parent,
const Transform inbFrame,
const Body ,
const Transform outbFrame,
Real  pitch,
Direction  = Forward 
)

Use this constructor to specify mobilizer frames which are not coincident with the body frames.


Member Function Documentation

Screw& addBodyDecoration ( const Transform X_BD,
const DecorativeGeometry g 
) [inline]

Add decorative geometry specified relative to the new (outboard) body's reference frame B, or to the outboard mobilizer frame M attached to body B, or to the inboard mobilizer frame F attached to the parent body P.

Note that the body itself may already have had some decorative geometry on it when it was first put into this MobilizedBody; in that case this just adds more.

Reimplemented from MobilizedBody.

References MobilizedBody::addBodyDecoration().

Screw& addInboardDecoration ( const Transform X_FD,
const DecorativeGeometry  
) [inline]

Add decorative geometry specified relative to the inboard mobilizer frame F attached to the parent body P.

If body P already has decorative geometry on it, this just adds some more.

Reimplemented from MobilizedBody.

References MobilizedBody::addInboardDecoration().

Screw& addOutboardDecoration ( const Transform X_MD,
const DecorativeGeometry  
) [inline]

Add decorative geometry specified relative to the outboard mobilizer frame M attached to body B.

If body B already has decorative geometry on it, this just adds some more.

Reimplemented from MobilizedBody.

References MobilizedBody::addOutboardDecoration().

Real getDefaultPitch (  )  const
Real getDefaultQ (  )  const
Real getMyPartQ ( const State ,
const Vector qlike 
) const
Real getMyPartU ( const State ,
const Vector ulike 
) const
Real getQ ( const State  )  const
Real getQDot ( const State  )  const
Real getQDotDot ( const State  )  const
Real getU ( const State  )  const
Real getUDot ( const State  )  const
Screw& setDefaultInboardFrame ( const Transform X_PF  )  [inline]

Change this mobilizer's frame F on the parent body P.

Calling this method invalidates the MobilizedBody's topology, so the containing matter subsystem's realizeTopology() method must be called again. A reference to this MobilizedBody is returned so that this can be chained like an assignment operator.

Reimplemented from MobilizedBody.

References MobilizedBody::setDefaultInboardFrame().

Screw& setDefaultOutboardFrame ( const Transform X_BM  )  [inline]

Change this mobilizer's frame M fixed on this (the outboard) body B.

Calling this method invalidates the MobilizedBody's topology, so the containing matter subsystem's realizeTopology() method must be called again. A reference to this MobilizedBody is returned so that this can be chained like an assignment operator.

Reimplemented from MobilizedBody.

References MobilizedBody::setDefaultOutboardFrame().

Screw& setDefaultPitch ( Real  pitch  ) 
Screw& setDefaultQ ( Real   ) 
void setQ ( State ,
Real   
) const
void setU ( State ,
Real   
) const
SimTK_INSERT_DERIVED_HANDLE_DECLARATIONS ( Screw  ,
ScrewImpl  ,
MobilizedBody   
)
Real& updMyPartQ ( const State ,
Vector qlike 
) const
Real& updMyPartU ( const State ,
Vector ulike 
) const

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

Generated on Wed Dec 30 11:05:15 2009 for SimTKcore by  doxygen 1.6.1