MobilizedBody.h File Reference

This defines the MobilizedBody class, which associates a new body (the "child", "outboard", or "successor" body) with a Mobilizer and a reference frame on an existing body (the "parent", "inboard", or "predecessor" body) that is already part of a MatterSubsystem. More...

#include "SimTKmath.h"
#include "simbody/internal/common.h"
#include "simbody/internal/Body.h"
#include "simbody/internal/Motion.h"
#include <cassert>

Go to the source code of this file.

Classes

class  MobilizedBody
 This is the base class for all MobilizedBody classes, just a handle for the underlying hidden implementation. More...
class  Pin
 One mobility -- rotation about the common z axis of the inboard and outboard mobilizer frames. More...
class  Slider
 One mobility -- translation along the common x axis of the inboard and outboard mobilizer frames. More...
class  Screw
 One mobility -- coordinated rotation and translation along the common z axis of the inboard and outboard mobilizer frames. More...
class  Universal
 Two mobilities -- rotation about the x axis, followed by a rotation about the new y axis. More...
class  Cylinder
 Two mobilities -- rotation and translation along the common z axis of the inboard and outboard mobilizer frames. More...
class  BendStretch
 Two mobilities: The z axis of the parent's F frame is used for rotation (and that is always aligned with the M frame z axis). More...
class  Planar
 Three mobilities -- z rotation and x,y translation. More...
class  SphericalCoords
 Three mobilities -- body fixed 3-2 (z-y) rotation followed by translation along body z or body x. More...
class  Gimbal
 Three mobilities -- unrestricted orientation modeled as a 1-2-3 body-fixed Euler angle sequence. More...
class  Ball
 Three mobilities -- unrestricted orientation modeled with a quaternion which is never singular. More...
class  Ellipsoid
 Three mobilities -- coordinated rotation and translation along the surface of an ellipsoid fixed to the parent (inboard) body. More...
class  Translation
 Three translational mobilities. More...
class  Free
 Unrestricted motion for a rigid body (six mobilities). More...
class  LineOrientation
 Two mobilities, representing unrestricted orientation for a body which is inertialess along its own z axis. More...
class  FreeLine
 Five mobilities, representing unrestricted motion for a body which is inertialess along its own z axis. More...
class  Weld
 Zero mobilities. More...
class  Ground
 This is a special type of "mobilized" body used as a placeholder for Ground in the 0th slot for a MatterSubsystem's mobilized bodies. More...
class  Custom
 The handle class MobilizedBody::Custom (dataless) and its companion class MobilizedBody::Custom::Implementation can be used together to define new MobilizedBody types with arbitrary properties. More...
class  Implementation
class  FunctionBased
 This is a subclass of MobilizedBody::Custom which uses a set of Function objects to define the behavior of the MobilizedBody. More...

Namespaces

namespace  SimTK
 

This is the top-level SimTK namespace into which all SimTK names are placed to avoid collision with other symbols.



Detailed Description

This defines the MobilizedBody class, which associates a new body (the "child", "outboard", or "successor" body) with a Mobilizer and a reference frame on an existing body (the "parent", "inboard", or "predecessor" body) that is already part of a MatterSubsystem.

MobilizedBody is an abstract base class handle, with concrete classes defined for each kind of mobilizer. There are a set of built-in mobilizers and a generic "Custom" mobilizer (an actual abstract base class) from which advanced users may derive their own mobilizers.

A Mobilizer may be associated with a Motion object which defines how it is to move; otherwise its motion is calculated as a result of the application of forces (either directly applied or resulting from constraint forces generated to satisfy restrictions imposed by Constraint objects).


Generated on Thu Aug 12 16:37:41 2010 for SimTKcore by  doxygen 1.6.1