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 void setup (Model &aModel)
 Perform some set up functions that happen after the object has been deserialized or copied.
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

void createSystem (SimTK::MultibodySystem &system) const
 This is called when a SimTK System is being created for the Model.
void initState (SimTK::State &s) const
 This is called after a SimTK System and State have been created for the Model.
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 should be overridden to add appropriate elements to the System corresponding to this object.

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 may be overridden 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 should be overridden 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  )  [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 Wed Dec 16 15:03:47 2009 for OpenSim by  doxygen 1.6.1