|
| HomogeneousTransform_Double () |
|
| HomogeneousTransform_Double (xyzVector< double > const &p1, xyzVector< double > const &p2, xyzVector< double > const &p3) |
|
| HomogeneousTransform_Double (xyzVector< double > const &xaxis, xyzVector< double > const &yaxis, xyzVector< double > const &zaxis, xyzVector< double > const &point) |
|
| HomogeneousTransform_Double (xyzMatrix< double > const &axes, xyzVector< double > const &point) |
|
| HomogeneousTransform () |
| Default constructor: axis aligned with the global coordinate frame and the point located at the origin. More...
|
|
| HomogeneousTransform (xyzVector< double > const &p1, xyzVector< double > const &p2, xyzVector< double > const &p3) |
| Construct the coordinate frame from the points defined such that. More...
|
|
| HomogeneousTransform (xyzVector< double > const &xaxis, xyzVector< double > const &yaxis, xyzVector< double > const &zaxis, xyzVector< double > const &point) |
| Constructor from xyzVectors: trust that the axis are indeed orthoganol. More...
|
|
| HomogeneousTransform (xyzMatrix< double > const &axes, xyzVector< double > const &point) |
| Constructor from an xyzMatrix and xyzVectors: trust that the axis are indeed orthoganol. More...
|
|
| ~HomogeneousTransform () |
|
HomogeneousTransform< double >
const & | operator= (HomogeneousTransform< double > const &rhs) |
|
value_type | xx () const |
|
value_type | xy () const |
|
value_type | xz () const |
|
value_type | yx () const |
|
value_type | yy () const |
|
value_type | yz () const |
|
value_type | zx () const |
|
value_type | zy () const |
|
value_type | zz () const |
|
value_type | px () const |
|
value_type | py () const |
|
value_type | pz () const |
|
xyzVector< double > | xaxis () const |
|
xyzVector< double > | yaxis () const |
|
xyzVector< double > | zaxis () const |
|
xyzVector< double > | point () const |
|
xyzMatrix< double > | rotation_matrix () const |
|
void | set_identity_rotation () |
| Mutators. More...
|
|
void | set_identity_transform () |
|
void | set_identity () |
|
void | set_xaxis_rotation_deg (doubleangle) |
|
void | set_yaxis_rotation_deg (doubleangle) |
|
void | set_zaxis_rotation_deg (doubleangle) |
|
void | set_xaxis_rotation_rad (doubleangle) |
|
void | set_yaxis_rotation_rad (doubleangle) |
|
void | set_zaxis_rotation_rad (doubleangle) |
|
void | set_transform (xyzVector< double > const &t) |
| Set this HT to describe a transformation along the three axes. This has the size effect of setting the axes to the global axes. More...
|
|
void | set_point (xyzVector< double > const &p) |
| Set the point that this HT is centered at. This leaves the axes untouched. More...
|
|
void | walk_along_x (doubledelta) |
| Right multiply this coordinate frame by the frame 1 0 0 delta 0 1 0 0 0 0 1 0. More...
|
|
void | walk_along_y (doubledelta) |
| Right multiply this coordinate frame by the frame 1 0 0 0 0 1 0 delta 0 0 1 0. More...
|
|
void | walk_along_z (doubledelta) |
| Right multiply this coordinate frame by the frame 1 0 0 0 0 1 0 0 0 0 1 delta. More...
|
|
HomogeneousTransform< double > | operator* (HomogeneousTransform< double > const &rmat) const |
| Multiplication. More...
|
|
xyzVector< double > | operator* (xyzVector< double > const &vect) const |
| Transform a point. The input point is a location in this coordinate frame the output point is the location in global coordinate frame. More...
|
|
HomogeneousTransform< double > | inverse () const |
| Invert this matrix. More...
|
|
xyzVector< double > | to_local_coordinate (xyzVector< double > const &v) |
| Convert a point in the global coordinate system to a point in this coordinate frame. If this frame is F and the point is p, then this solves for x st: F x = p. Equivalent to computing (F.inverse() * p).point(). More...
|
|
xyzVector< double > | euler_angles_rad () const |
| Return the three euler angles (in radians) that describe this HomogeneousTransform as the series of a Z axis rotation by the angle phi (returned in position 1 of the output vector), followed by an X axis rotation by the angle theta (returned in position 3 of the output vector), followed by another Z axis rotation by the angle psi (returned in position 2 of the output vector). This code is a modified version of Alex Z's code from r++. More...
|
|
xyzVector< double > | euler_angles_deg () const |
|
void | from_euler_angles_rad (xyzVector< double > const &euler) |
| Construct the coordinate frame from three euler angles that describe the frame. Keep the point fixed. See the description for euler_angles_rad() to understand the Z-X-Z transformation convention. More...
|
|
void | from_euler_angles_deg (xyzVector< double > const &euler) |
|
std::ostream & | show_stream (std::ostream &stream=std::cout) const |
|
void | show (std::ostream &stream=std::cout) const |
|