33 #ifndef DART_DYNAMICS_BALLJOINT_HPP_
34 #define DART_DYNAMICS_BALLJOINT_HPP_
36 #include <Eigen/Dense>
65 const std::string&
getType()
const override;
71 bool isCyclic(std::size_t _index)
const override;
82 template <
typename RotationType>
96 const Eigen::Vector3d& _positions)
const override;
100 const Eigen::Vector3d& _q2,
const Eigen::Vector3d& _q1)
const override;
130 const Eigen::Isometry3d&
getR()
const;
135 mutable Eigen::Isometry3d
mR;
139 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
#define DART_DEFINE_ALIGNED_SHARED_OBJECT_CREATOR(class_name)
Definition: Memory.hpp:148
BodyPropPtr properties
Definition: SdfParser.cpp:80
Terminator for the variadic template.
Definition: CompositeJoiner.hpp:45
class BallJoint
Definition: BallJoint.hpp:45
static const std::string & getStaticType()
Get joint type for this class.
Definition: BallJoint.cpp:64
static Eigen::Isometry3d convertToTransform(const Eigen::Vector3d &_positions)
Convert a BallJoint-style position vector into a transform.
Definition: BallJoint.cpp:84
static Eigen::Matrix3d convertToRotation(const Eigen::Vector3d &_positions)
Convert a BallJoint-style position vector into a rotation matrix.
Definition: BallJoint.cpp:91
bool isCyclic(std::size_t _index) const override
Definition: BallJoint.cpp:71
Properties getBallJointProperties() const
Get the Properties of this BallJoint.
Definition: BallJoint.cpp:78
void updateRelativeJacobian(bool _mandatory=true) const override
Definition: BallJoint.cpp:164
const Eigen::Isometry3d & getR() const
Access mR, which is an auto-updating variable.
Definition: BallJoint.cpp:180
void updateDegreeOfFreedomNames() override
Definition: BallJoint.cpp:142
static Eigen::Vector3d convertToPositions(const RotationType &_rotation)
Convert a rotation into a 3D vector that can be used to set the positions of a BallJoint.
Definition: BallJoint.hpp:83
Eigen::Isometry3d mR
Rotation matrix dependent on the generalized coordinates.
Definition: BallJoint.hpp:135
const std::string & getType() const override
Definition: BallJoint.cpp:58
void integratePositions(double _dt) override
Definition: BallJoint.cpp:133
void updateRelativeTransform() const override
Definition: BallJoint.cpp:153
void updateRelativeJacobianTimeDeriv() const override
Definition: BallJoint.cpp:174
virtual ~BallJoint()
Destructor.
Definition: BallJoint.cpp:52
Eigen::Vector3d getPositionDifferencesStatic(const Eigen::Vector3d &_q2, const Eigen::Vector3d &_q1) const override
Definition: BallJoint.cpp:123
BallJoint(const Properties &properties)
Constructor called by Skeleton class.
Definition: BallJoint.cpp:97
Joint * clone() const override
Definition: BallJoint.cpp:110
Definition: GenericJoint.hpp:49
const GenericJoint< math::SO3Space >::JacobianMatrix & getRelativeJacobianStatic() const
Fixed-size version of getRelativeJacobian()
Definition: GenericJoint.hpp:1588
detail::GenericJointProperties< math::SO3Space > Properties
Definition: GenericJoint.hpp:64
class Joint
Definition: Joint.hpp:59
class Skeleton
Definition: Skeleton.hpp:59
Eigen::Vector3d logMap(const Eigen::Matrix3d &_R)
Log mapping.
Definition: Geometry.cpp:515
Definition: BulletCollisionDetector.cpp:63
Definition: BallJoint.hpp:53
virtual ~Properties()=default
Properties(const Base::Properties &properties=Base::Properties())
Definition: BallJoint.cpp:45