Ball Class Reference

Three constraint equations. More...

#include <Constraint.h>

Inheritance diagram for Ball:
Constraint PIMPLHandle< Constraint, ConstraintImpl, true >

List of all members.

Public Member Functions

 Ball (MobilizedBody &body1, MobilizedBody &body2)
 Ball (MobilizedBody &body1, const Vec3 &defaultPoint1, MobilizedBody &body2, const Vec3 &defaultPoint2)
BallsetDefaultPointOnBody1 (const Vec3 &)
BallsetDefaultPointOnBody2 (const Vec3 &)
BallsetDefaultRadius (Real r)
Real getDefaultRadius () const
MobilizedBodyIndex getBody1MobilizedBodyIndex () const
MobilizedBodyIndex getBody2MobilizedBodyIndex () const
const Vec3getDefaultPointOnBody1 () const
const Vec3getDefaultPointOnBody2 () const
const Vec3getPointOnBody1 (const State &) const
const Vec3getPointOnBody2 (const State &) const
Vec3 getPositionErrors (const State &) const
Vec3 getVelocityErrors (const State &) const
Vec3 getAccelerationErrors (const State &) const
Vec3 getMultipliers (const State &) const
const Vec3getBallReactionForceOnBody1 (const State &) const
const Vec3getBallReactionForceOnBody2 (const State &) const
 SimTK_INSERT_DERIVED_HANDLE_DECLARATIONS (Ball, BallImpl, Constraint)

Detailed Description

Three constraint equations.

This constraint enforces coincident location between a point on one body and a point on another body.

The constraint is enforced by an internal (non-working) force applied at the spatial location of the point on body 2, on material points of each body that are coincident with that spatial location. Note that this is somewhat asymmetric when the ball is not properly assembled -- it acts as though the contact occurs at the point on body 2, *not* at the point on body 1.

The assembly condition is the same as the runtime constraint -- the two points can be brought together by driving the perr to zero.


Constructor & Destructor Documentation

Ball ( MobilizedBody body1,
MobilizedBody body2 
)
Ball ( MobilizedBody body1,
const Vec3 defaultPoint1,
MobilizedBody body2,
const Vec3 defaultPoint2 
)

Member Function Documentation

Vec3 getAccelerationErrors ( const State  )  const
const Vec3& getBallReactionForceOnBody1 ( const State  )  const
const Vec3& getBallReactionForceOnBody2 ( const State  )  const
MobilizedBodyIndex getBody1MobilizedBodyIndex (  )  const
MobilizedBodyIndex getBody2MobilizedBodyIndex (  )  const
const Vec3& getDefaultPointOnBody1 (  )  const
const Vec3& getDefaultPointOnBody2 (  )  const
Real getDefaultRadius (  )  const
Vec3 getMultipliers ( const State  )  const
const Vec3& getPointOnBody1 ( const State  )  const
const Vec3& getPointOnBody2 ( const State  )  const
Vec3 getPositionErrors ( const State  )  const
Vec3 getVelocityErrors ( const State  )  const
Ball& setDefaultPointOnBody1 ( const Vec3  ) 
Ball& setDefaultPointOnBody2 ( const Vec3  ) 
Ball& setDefaultRadius ( Real  r  ) 
SimTK_INSERT_DERIVED_HANDLE_DECLARATIONS ( Ball  ,
BallImpl  ,
Constraint   
)

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

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