1 #ifndef CLASSIC_Rotation3D_HH
2 #define CLASSIC_Rotation3D_HH
81 void getAxis(
double &vx,
double &vy,
double &vz)
const;
132 {
return (
R == rhs.
R); }
136 {
return (
R != rhs.
R); }
140 {
return R(row, col); }
151 return result *= rhs;
bool isIdentity() const
Test for identity.
Rotation in 3-dimensional space.
static Rotation3D Identity()
Make identity.
bool operator!=(const Rotation3D &) const
bool isIdentity() const
Test for identity.
Rotation3D & operator*=(const Rotation3D &rhs)
Multiply and assign.
double operator()(int i, int k) const
Get component.
static Rotation3D ZRotation(double angle)
Make rotation.
static Rotation3D YRotation(double angle)
Make rotation.
Rotation3D inverse() const
Inversion.
Rotation3D operator*(const Rotation3D &rhs) const
Multiply.
bool isPureXRotation() const
Test for rotation.
Vector3D getAxis() const
Get axis vector.
bool isPureZRotation() const
Test for rotation.
static Rotation3D XRotation(double angle)
Make rotation.
bool isPureYRotation() const
Test for rotation.
Rotation3D()
Default constructor.
bool operator==(const Rotation3D &) const