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.
A 2D frame class, for further documentation see the Frames class for methods with unchanged semantics...
represents a frame transformation in 3D space (rotation + translation)
static Frame DH(double a, double alpha, double d, double theta)
A 2D Rotation class, for conventions see Rotation. For further documentation of the methods see Rotat...
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)
Gives back a rotation matrix specified with EulerZYX convention : First rotate around Z with alfa,...
static Rotation Identity()
Gives back an identity rotaton matrix.
static Rotation Rot(const Vector &rotaxis, double angle)
Along an arbitrary axes. It is not necessary to normalize rotaxis. returns identity rotation matrix i...
static Rotation EulerZYZ(double Alfa, double Beta, double Gamma)
Gives back a rotation matrix specified with EulerZYZ convention : First rotate around Z with alfa,...
static Rotation RPY(double roll, double pitch, double yaw)
Sets the value of this object to a rotation specified with RPY convention: first rotate around X with...
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)