OpenSim::EllipsoidJoint Class Reference

A class implementing an Ellipsoid joint. More...

#include <EllipsoidJoint.h>

Inheritance diagram for OpenSim::EllipsoidJoint:
OpenSim::Joint OpenSim::ModelComponent OpenSim::Object

List of all members.

Public Member Functions

 EllipsoidJoint ()
 Default constructor.
 EllipsoidJoint (const std::string &name, OpenSim::Body &parent, SimTK::Vec3 locationInParent, SimTK::Vec3 orientationInParent, OpenSim::Body &body, SimTK::Vec3 locationInBody, SimTK::Vec3 orientationInBody, SimTK::Vec3 ellipsoidRadii, bool reverse=false)
 Convenience Constructor.
 EllipsoidJoint (const EllipsoidJoint &aJoint)
 Copy constructor.
virtual ~EllipsoidJoint ()
 Destructor.
virtual Objectcopy () const
 Copy this body and return a pointer to the copy.
EllipsoidJointoperator= (const EllipsoidJoint &aJoint)
 Assignment operator.
void copyData (const EllipsoidJoint &aJoint)
 Copy data members from one EllipsoidJoint to another.
virtual int numCoordinates () const
void setEllipsoidRadii (SimTK::Vec3 radii)
virtual void scale (const ScaleSet &aScaleSet)
 Scale a joint based on XYZ scale factors for the bodies.

Protected Member Functions

virtual void setup (Model &aModel)
 Perform some set up functions that happen after the object has been deserialized or copied.
virtual void createSystem (SimTK::MultibodySystem &system) const
 This is called when a SimTK System is being created for the Model.
virtual void initState (SimTK::State &s) const
 This is called after a SimTK System and State have been created for the Model.
virtual void setDefaultsFromState (const SimTK::State &state)
 Set all default values for this object to match those in a specified State.

Protected Attributes

PropertyDblVec3 _ellipsoidRadiiProp
 Ellipsoid radii mobilizer frame as a Vec3(rX, rY, rZ).
SimTK::Vec3 & _ellipsoidRadii

Detailed Description

A class implementing an Ellipsoid joint.

The underlying implementation in Simbody is a MobilizedBody::Ellipsoid.

Author:
Ajay Seth
Version:
1.0

Constructor & Destructor Documentation

EllipsoidJoint::EllipsoidJoint (  ) 

Default constructor.

EllipsoidJoint::EllipsoidJoint ( const std::string &  name,
OpenSim::Body parent,
SimTK::Vec3  locationInParent,
SimTK::Vec3  orientationInParent,
OpenSim::Body body,
SimTK::Vec3  locationInBody,
SimTK::Vec3  orientationInBody,
SimTK::Vec3  ellipsoidRadii,
bool  reverse = false 
)

Convenience Constructor.

EllipsoidJoint::EllipsoidJoint ( const EllipsoidJoint aJoint  ) 

Copy constructor.

Parameters:
aJoint EllipsoidJoint to be copied.
EllipsoidJoint::~EllipsoidJoint (  )  [virtual]

Destructor.


Member Function Documentation

Object * EllipsoidJoint::copy (  )  const [virtual]

Copy this body and return a pointer to the copy.

The copy constructor for this class is used.

Returns:
Pointer to a copy of this OpenSim::Body.

Implements OpenSim::Joint.

void EllipsoidJoint::copyData ( const EllipsoidJoint aJoint  ) 

Copy data members from one EllipsoidJoint to another.

Parameters:
aJoint EllipsoidJoint to be copied.

Reimplemented from OpenSim::Joint.

void EllipsoidJoint::createSystem ( SimTK::MultibodySystem &  system  )  const [protected, virtual]

This is called when a SimTK System is being created for the Model.

It must be implemented to add appropriate elements to the System corresponding to this object. Methods for adding modeling options, state variables and their derivatives, discrete variables, as well must be called with createSystem() only.

Parameters:
system the System being created

Reimplemented from OpenSim::Joint.

void EllipsoidJoint::initState ( SimTK::State &  state  )  const [protected, virtual]

This is called after a SimTK System and State have been created for the Model.

It must be implementd to set initial values of state variables.

Parameters:
state the State to initialize

Reimplemented from OpenSim::Joint.

virtual int OpenSim::EllipsoidJoint::numCoordinates (  )  const [inline, virtual]

Implements OpenSim::Joint.

EllipsoidJoint & EllipsoidJoint::operator= ( const EllipsoidJoint aJoint  ) 

Assignment operator.

Returns:
Reference to this object.

Reimplemented from OpenSim::Joint.

void EllipsoidJoint::scale ( const ScaleSet aScaleSet  )  [virtual]

Scale a joint based on XYZ scale factors for the bodies.

Parameters:
aScaleSet Set of XYZ scale factors for the bodies.

Reimplemented from OpenSim::Joint.

void EllipsoidJoint::setDefaultsFromState ( const SimTK::State &  state  )  [protected, virtual]

Set all default values for this object to match those in a specified State.

It must be implemented/overriden to set any default values defined by each subclass.

Parameters:
state the State from which to take values that should become the defaults for this object

Reimplemented from OpenSim::Joint.

void OpenSim::EllipsoidJoint::setEllipsoidRadii ( SimTK::Vec3  radii  ) 
void EllipsoidJoint::setup ( Model aModel  )  [protected, virtual]

Perform some set up functions that happen after the object has been deserialized or copied.

Parameters:
aEngine dynamics engine containing this EllipsoidJoint.

Reimplemented from OpenSim::Joint.


Member Data Documentation

SimTK::Vec3& OpenSim::EllipsoidJoint::_ellipsoidRadii [protected]

Ellipsoid radii mobilizer frame as a Vec3(rX, rY, rZ).


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

Generated on Sun Sep 25 00:20:02 2011 for OpenSim by  doxygen 1.6.1