75#ifdef KDL_ROTATION_PROPERTIES_RPY
84# ifdef KDL_ROTATION_PROPERTIES_EULER
87 os <<
"[EULERZYX]"<<endl;
94 for (
int i=0;i<=2;i++) {
99 os <<
";"<< std::endl <<
" ";
110 os <<
"[" << T.M << std::endl<< T.p <<
"]";
122 os <<
"[" <<
R.GetRot()*
rad2deg <<
"]";
133{
IOTrace(
"Stream input Vector (vector or ZERO)");
136 if (storage[0]==
'\0') {
147 if (strcmp(storage,
"ZERO")==0) {
156{
IOTrace(
"Stream input Twist");
175{
IOTrace(
"Stream input Wrench");
194{
IOTrace(
"Stream input Rotation (Matrix or EULERZYX, EULERZYZ,RPY, ROT, IDENTITY)");
197 if (storage[0]==
'\0') {
199 for (
int i=0;i<3;i++) {
214 if (strcmp(storage,
"EULERZYX")==0) {
221 if (strcmp(storage,
"EULERZYZ")==0) {
228 if (strcmp(storage,
"RPY")==0) {
235 if (strcmp(storage,
"ROT")==0) {
245 if (strcmp(storage,
"IDENTITY")==0) {
255{
IOTrace(
"Stream input Frame (Rotation,Vector) or DH[...]");
258 if (storage[0]==
'\0') {
266 if (strcmp(storage,
"DH")==0) {
267 double a,alpha,d,theta;
286{
IOTrace(
"Stream input Vector2");
296{
IOTrace(
"Stream input Rotation2");
306{
IOTrace(
"Stream input Frame2");
static double angle(const Eigen::Vector3d &v1, const Eigen::Vector3d &v2)
ATTR_WARN_UNUSED_RESULT const BMVert * v
SIMD_FORCE_INLINE const btScalar & z() const
Return the z value.
represents a frame transformation in 3D space (rotation + translation)
static Frame DH(double a, double alpha, double d, double theta)
static Rotation2 Rot(double angle)
The Rot... static functions give the value of the appropriate rotation matrix bac.
represents rotations in 3 dimensional space.
static Rotation EulerZYX(double Alfa, double Beta, double Gamma)
static Rotation Identity()
Gives back an identity rotaton matrix.
static Rotation Rot(const Vector &rotaxis, double angle)
static Rotation EulerZYZ(double Alfa, double Beta, double Gamma)
static Rotation RPY(double roll, double pitch, double yaw)
represents both translational and rotational velocities.
A concrete implementation of a 3 dimensional vector class.
represents both translational and rotational acceleration.
void EatEnd(std::istream &is, int delim)
const double deg2rad
the value pi/180
void Eat(std::istream &is, int delim)
void EatWord(std::istream &is, const char *delim, char *storage, int maxsize)
std::ostream & operator<<(std::ostream &os, const Vector &v)
const double rad2deg
the value 180/pi
void IOTracePop()
pops a description of the IO-stack
void IOTrace(const std::string &description)
std::istream & operator>>(std::istream &is, Vector &v)