21 #include "a_quaternion.h"
39 void set(
const a_point& p, a_point
d,
double t,
double r);
40 void set(
double x,
double y,
double z,
double dx,
double dy,
double dz,
double t,
double r=0.);
43 a_twist(
const a_point& p, a_point
d,
double t,
double r);
44 a_twist(
double x,
double y,
double z,
double dx,
double dy,
double dz,
double t,
double r=0.);
46 std::string
name()
const {
return "a_twist";}
48 static const std::string
help();
50 inline double dx()
const {
return p2_.x();}
51 inline double dy()
const {
return p2_.y();}
52 inline double dz()
const {
return p2_.z();}
54 inline double rx()
const {
return p1_.x();}
55 inline double ry()
const {
return p1_.y();}
56 inline double rz()
const {
return p1_.z();}
57 inline double d()
const {
return p2_.norm();}
58 inline double r()
const {
return p1_.norm();}
65 void matrix(
const a_mat_sq& mat);
68 void translate(
const double& x,
const double& y,
const double& z) {this->
translate(a_point(x,y,z));}
69 void rotate(
const a_point& pt,
const a_point& dir,
double v);
a_point operator*(a_point p, const a_twist &t)
a_point operator*(a_point p) const
transform a point using the screw
a_quaternion quaternion() const
conversion routines
double rx() const
p1_ : rotation (applied first, norm is rotation in radian, direction is axis of rotation)
void translate(const double &x, const double &y, const double &z)
void rotate(const a_point &pt, const a_point &dir, double v)
a_twist(const a_plucker &m)
void set(const a_point &p, a_point d, double t, double r)
void translate(const a_point &d)
iterative transformation
double dx() const
p2_ : translation
static const std::string help()
get information about the class