Drake
PrismaticJoint Class Reference

A prismatic joint moves linearly along one axis. More...

#include <drake/multibody/joints/prismatic_joint.h>

Inheritance diagram for PrismaticJoint:
[legend]
Collaboration diagram for PrismaticJoint:
[legend]

Public Member Functions

 PrismaticJoint (const std::string &name, const Eigen::Isometry3d &transform_to_parent_body, const Eigen::Vector3d &translation_axis)
 The constructor that intializes the name, position, and axis of motion of this prismatic joint. More...
 
template<typename DerivedQ >
Eigen::Transform< typename DerivedQ::Scalar, 3, Eigen::Isometry > jointTransform (const Eigen::MatrixBase< DerivedQ > &q) const
 
virtual ~PrismaticJoint ()
 
const Eigen::Vector3d & translation_axis () const
 
- Public Member Functions inherited from FixedAxisOneDoFJoint< PrismaticJoint >
virtual ~FixedAxisOneDoFJoint ()
 
void motionSubspace (const Eigen::MatrixBase< DerivedQ > &q, Eigen::MatrixBase< DerivedMS > &motion_subspace, typename drake::math::Gradient< DerivedMS, Eigen::Dynamic >::type *dmotion_subspace=nullptr) const
 
void motionSubspaceDotTimesV (const Eigen::MatrixBase< DerivedQ > &q, const Eigen::MatrixBase< DerivedV > &v, Eigen::Matrix< typename DerivedQ::Scalar, 6, 1 > &motion_subspace_dot_times_v, typename drake::math::Gradient< Eigen::Matrix< typename DerivedQ::Scalar, 6, 1 >, Eigen::Dynamic >::type *dmotion_subspace_dot_times_vdq=nullptr, typename drake::math::Gradient< Eigen::Matrix< typename DerivedQ::Scalar, 6, 1 >, Eigen::Dynamic >::type *dmotion_subspace_dot_times_vdv=nullptr) const
 
void qdot2v (const Eigen::MatrixBase< DerivedQ > &q, Eigen::Matrix< typename DerivedQ::Scalar, Eigen::Dynamic, Eigen::Dynamic, 0, DrakeJoint::MAX_NUM_VELOCITIES, DrakeJoint::MAX_NUM_POSITIONS > &qdot_to_v, Eigen::Matrix< typename DerivedQ::Scalar, Eigen::Dynamic, Eigen::Dynamic > *dqdot_to_v) const
 
void v2qdot (const Eigen::MatrixBase< DerivedQ > &q, Eigen::Matrix< typename DerivedQ::Scalar, Eigen::Dynamic, Eigen::Dynamic, 0, DrakeJoint::MAX_NUM_POSITIONS, DrakeJoint::MAX_NUM_VELOCITIES > &v_to_qdot, Eigen::Matrix< typename DerivedQ::Scalar, Eigen::Dynamic, Eigen::Dynamic > *dv_to_qdot) const
 
Eigen::Matrix< typename DerivedV::Scalar, Eigen::Dynamic, 1 > frictionTorque (const Eigen::MatrixBase< DerivedV > &v) const
 
void setJointLimits (double joint_limit_min, double joint_limit_max)
 
void SetJointLimitDynamics (double joint_limit_stiffness, double joint_limit_dissipation)
 
Eigen::VectorXd zeroConfiguration () const override
 
Eigen::VectorXd randomConfiguration (std::default_random_engine &generator) const override
 
void setDynamics (double damping, double coulomb_friction, double coulomb_window)
 
std::string get_position_name (int index) const override
 
std::string getPositionName (int index) const override
 
const drake::TwistVector< double > & joint_axis () const
 
double damping () const
 
double coulomb_friction () const
 
double coulomb_window () const
 

Protected Member Functions

std::unique_ptr< DrakeJointDoClone () const final
 
- Protected Member Functions inherited from FixedAxisOneDoFJoint< PrismaticJoint >
 FixedAxisOneDoFJoint (PrismaticJoint &derived, const std::string &name, const Eigen::Isometry3d &transform_to_parent_body, const drake::TwistVector< double > &_joint_axis)
 
void DoInitializeClone (DrakeJoint *clone) const override
 Initializes the private member variables within the provided clone. More...
 

Detailed Description

A prismatic joint moves linearly along one axis.

Constructor & Destructor Documentation

PrismaticJoint ( const std::string &  name,
const Eigen::Isometry3d &  transform_to_parent_body,
const Eigen::Vector3d &  translation_axis 
)
inline

The constructor that intializes the name, position, and axis of motion of this prismatic joint.

Parameters
[in]nameThe name of this joint.
[in]transform_to_parent_bodyThe transform from this joint's frame to this joint's parent's frame.
[in]translation_axisThe axis along which this joint moves.

Here is the call graph for this function:

virtual ~PrismaticJoint ( )
inlinevirtual

Member Function Documentation

std::unique_ptr< DrakeJoint > DoClone ( ) const
finalprotected

Here is the caller graph for this function:

Eigen::Transform<typename DerivedQ::Scalar, 3, Eigen::Isometry> jointTransform ( const Eigen::MatrixBase< DerivedQ > &  q) const
inline
const Eigen::Vector3d& translation_axis ( ) const
inline

Here is the call graph for this function:

Here is the caller graph for this function:


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