Moby
Public Member Functions | List of all members
Moby::ArticulatedBody Class Reference

Abstract class for articulated bodies. More...

#include <ArticulatedBody.h>

Inheritance diagram for Moby::ArticulatedBody:
Moby::ControlledBody Moby::Visualizable Moby::Base Moby::RCArticulatedBody

Public Member Functions

virtual void update_visualization ()
 Updates visualization for the body.
 
virtual void load_from_xml (boost::shared_ptr< const XMLTree > node, std::map< std::string, BasePtr > &id_map)
 Loads a MCArticulatedBody object from an XML node.
 
virtual void save_to_xml (XMLTreePtr node, std::list< boost::shared_ptr< const Base > > &shared_objects) const
 Saves this object to a XML tree.
 
void update_joint_constraint_violations ()
 Updates joint constraint violation (after integration)
 
bool is_joint_constraint_violated () const
 Checks for a joint constraint violation.
 
virtual void prepare_to_calc_ode (Ravelin::SharedConstVectorNd &x, double t, double dt, void *data)
 Prepares to compute the ODE.
 
virtual void prepare_to_calc_ode_sustained_constraints (Ravelin::SharedConstVectorNd &x, double t, double dt, void *data)
 Integrates a dynamic body. More...
 
virtual void ode (double t, double dt, void *data, Ravelin::SharedVectorNd &dx)
 Returns the ODE's for position and velocity (concatenated into x)
 
template<class OutputIterator >
OutputIterator find_limit_constraints (OutputIterator begin) const
 Finds (joint) limit constraints. More...
 
ArticulatedBodyPtr get_this ()
 Gets shared pointer to this object as type ArticulatedBody.
 
boost::shared_ptr< const
ArticulatedBody
get_this () const
 Gets shared pointer to this object as type const ArticulateBody.
 
template<class OutputIterator >
OutputIterator find_limit_constraints (OutputIterator output_begin) const
 Gets joint limit constraints.
 
- Public Member Functions inherited from Moby::ControlledBody
const std::list
< RecurrentForcePtr > & 
get_recurrent_forces () const
 Gets the set of recurrent forces applied to this body.
 
std::list< RecurrentForcePtr > & get_recurrent_forces ()
 Gets the set of recurrent forces applied to this body.
 
- Public Member Functions inherited from Moby::Visualizable
 Visualizable (const Visualizable *v)
 
void set_visualization_relative_pose (const Ravelin::Pose3d &P)
 Sets the visualization relative pose.
 
virtual void set_visualization_data (osg::Node *vdata)
 Sets the visualization data from a node.
 
virtual void set_visualization_data (OSGGroupWrapperPtr vdata)
 Sets the visualization data from a OSGGroupWrapper.
 
osg::Group * get_visualization_data () const
 Gets the visualization data for this object.
 
boost::shared_ptr< const
Ravelin::Pose3d > 
get_visualization_pose ()
 Gets the pose for this visualizable object.
 
- Public Member Functions inherited from Moby::Base
 Base (const Base *b)
 

Additional Inherited Members

- Static Public Member Functions inherited from Moby::Visualizable
static osg::Group * construct_from_node (boost::shared_ptr< const XMLTree > node, const std::map< std::string, BasePtr > &id_map)
 Utility method for load_from_xml() More...
 
- Static Public Member Functions inherited from Moby::Base
template<class T >
static boost::shared_ptr< T > clone (boost::shared_ptr< T > x)
 Static method for cloning a shared pointer.
 
- Public Attributes inherited from Moby::ControlledBody
Ravelin::VectorNd &(* controller )(boost::shared_ptr< ControlledBody > body, Ravelin::VectorNd &, double, void *)
 The controller callback, if any, for this body.
 
void * controller_arg
 Argument to be passed to the controller.
 
- Public Attributes inherited from Moby::Base
boost::shared_ptr< void > userdata
 Any relevant userdata.
 
std::string id
 The unique ID for this object.
 
- Protected Attributes inherited from Moby::ControlledBody
boost::weak_ptr< Simulatorsimulator
 Pointer to the simulator (necessary for applying impulses w/constraints)
 
- Protected Attributes inherited from Moby::Visualizable
boost::shared_ptr
< Ravelin::Pose3d > 
_vF
 The relative pose.
 
OSGGroupWrapperPtr _vizdata
 The underlying visualization data.
 

Detailed Description

Abstract class for articulated bodies.

Member Function Documentation

template<class OutputIterator >
OutputIterator Moby::ArticulatedBody::find_limit_constraints ( OutputIterator  begin) const

Finds (joint) limit constraints.

Gets joint limit constraints.

Referenced by Moby::ConstraintSimulator::find_unilateral_constraints().

void ArticulatedBody::prepare_to_calc_ode_sustained_constraints ( Ravelin::SharedConstVectorNd &  x,
double  t,
double  dt,
void *  data 
)
virtual

Integrates a dynamic body.

Prepares to compute the ODE

Implements Moby::ControlledBody.


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