Moby
|
Defines an actuated spherical joint. More...
#include <SphericalJoint.h>
Public Member Functions | |
SphericalJoint () | |
Initializes the joint. More... | |
SphericalJoint (boost::weak_ptr< RigidBody > inboard, boost::weak_ptr< RigidBody > outboard) | |
Initializes the joint with the specified inboard and outboard links. More... | |
virtual unsigned | num_dof () const |
virtual bool | is_singular_config () const |
virtual void | evaluate_constraints (double C[]) |
virtual const std::vector < Ravelin::SVelocityd > & | get_spatial_axes_dot () |
virtual void | determine_q (Ravelin::VectorNd &q) |
virtual boost::shared_ptr < const Ravelin::Pose3d > | get_induced_pose () |
virtual void | load_from_xml (boost::shared_ptr< const XMLTree > node, std::map< std::string, BasePtr > &id_map) |
Implements Base::load_from_xml() | |
virtual void | save_to_xml (XMLTreePtr node, std::list< boost::shared_ptr< const Base > > &shared_objects) const |
Implements Base::save_to_xml() | |
Public Member Functions inherited from Moby::Joint | |
Joint () | |
Initializes the joint. More... | |
Joint (boost::weak_ptr< RigidBody > inboard, boost::weak_ptr< RigidBody > outboard) | |
Initializes the joint with the specified inboard and outboard links. More... | |
void | set_location (const Point3d &p, RigidBodyPtr inboard, RigidBodyPtr outboard) |
Sets the location of this joint with specified inboard and outboard links. | |
Ravelin::VectorNd & | get_scaled_force (Ravelin::VectorNd &f) |
Gets the scaled actuator forces. More... | |
virtual void | set_inboard_link (RigidBodyPtr link, bool update_pose) |
Sets the pointer to the inboard link for this joint (and updates the spatial axes, if the outboard link has been set) | |
virtual void | set_outboard_link (RigidBodyPtr link, bool update_pose) |
Sets the pointer to the outboard link for this joint. More... | |
void | set_articulated_body (ArticulatedBodyPtr abody) |
Sets the articulated body corresponding to this body. More... | |
ArticulatedBodyPtr | get_articulated_body () |
Gets the articulated body corresponding to this body. More... | |
RigidBodyPtr | get_inboard_link () const |
Gets the inboard link for this joint. | |
RigidBodyPtr | get_outboard_link () const |
Gets the outboard link for this joint. | |
Public Member Functions inherited from Moby::Visualizable | |
Visualizable (const Visualizable *v) | |
virtual void | update_visualization () |
Updates the visualization using the appropriate transform. More... | |
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 | |
Public Types inherited from Moby::Joint | |
enum | ConstraintType { eUnknown, eExplicit, eImplicit } |
enum | DOFs { DOF_1 =0, DOF_2 =1, DOF_3 =2, DOF_4 =3, DOF_5 =4, DOF_6 =5 } |
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::Joint | |
Ravelin::VectorNd | lolimit |
The lower joint limit. | |
Ravelin::VectorNd | hilimit |
The upper joint limit. | |
double | limit_restitution |
The coefficient of restitution applied when this joint reaches a limit. | |
double | mu_fc |
The coulomb friction coefficient for this joint. | |
double | mu_fv |
The viscous friction coefficient for this joint. | |
double | compliant_layer_depth |
The depth of the compliant layer around the joint limit. | |
Public Attributes inherited from Moby::Base | |
boost::shared_ptr< void > | userdata |
Any relevant userdata. | |
std::string | id |
The unique ID for this object. | |
Protected Member Functions inherited from Moby::Joint | |
void | determine_q_dot () |
(Relatively slow) method for determining the joint velocity from current link velocities | |
virtual void | init_data () |
Computes the constraint Jacobian for this joint with respect to the given body in Rodrigues parameters. More... | |
Protected Attributes inherited from Moby::Visualizable | |
boost::shared_ptr < Ravelin::Pose3d > | _vF |
The relative pose. | |
OSGGroupWrapperPtr | _vizdata |
The underlying visualization data. | |
Defines an actuated spherical joint.
SphericalJoint::SphericalJoint | ( | ) |
Initializes the joint.
The axes of rotation are each set to [0 0 0]. The inboard and outboard links are set to NULL.
References Moby::Joint::init_data().
SphericalJoint::SphericalJoint | ( | boost::weak_ptr< RigidBody > | inboard, |
boost::weak_ptr< RigidBody > | outboard | ||
) |
Initializes the joint with the specified inboard and outboard links.
The axis of rotation is set to [0 0 0].