1 #ifndef CLASSIC_Euclid3D_HH
2 #define CLASSIC_Euclid3D_HH
81 Euclid3D(
double x,
double y,
double z,
double vx,
double vy,
double vz);
88 void getAll(
double &x,
double &y,
double &z,
89 double &vx,
double &vy,
double &vz)
const;
113 double M(
int row,
int col)
const;
213 V(),
R(), is_identity(true)
237 #endif // CLASSIC_Euclid3D_HH
void setX(double x)
Set displacement.
Rotation in 3-dimensional space.
static Euclid3D XRotation(double angle)
Make rotation.
void setDisplacement(const Vector3D &V)
Set displacement.
const Euclid3D & operator*=(const Euclid3D &rhs)
Dot product with assign.
Euclid3D operator*(const Euclid3D &rhs) const
Dot product.
Euclid3D Inverse(const Euclid3D &t)
Euclidean inverse.
item[EANGLE] Entrance edge angle(radians).\item[ROTATION] Rotation of the magnet about its central axis(radians
double getX() const
Get displacement.
bool isPureYRotation() const
Test for rotation.
Euclid3D()
Default constructor.
bool isPureXRotation() const
Test for rotation.
Euclid3D inverse() const
Inverse.
bool operator!=(const Euclid3D &) const
double getZ() const
Get displacement.
bool isIdentity() const
Test for identity.
void setZ(double z)
Set displacement.
const Rotation3D & getRotation() const
Get rotation.
double getY() const
Get displacement.
static Euclid3D ZRotation(double angle)
Make rotation.
double M(int row, int col) const
Get component.
double getY() const
Get component.
bool operator==(const Euclid3D &) const
static Euclid3D YRotation(double angle)
Make rotation.
static Euclid3D translation(double x, double y, double z)
Make translation.
bool isPureTranslation() const
Test for translation.
void getAll(double &x, double &y, double &z, double &vx, double &vy, double &vz) const
Unpack.
void setY(double y)
Set displacement.
const Euclid3D & dotBy(const Euclid3D &rhs)
Dot product with assign.
double getZ() const
Get component.
Euclid3D dot(const Euclid3D &rhs) const
Dot product.
static Euclid3D identity()
Make identity.
Displacement and rotation in space.
bool isPureZRotation() const
Test for rotation.
void setRotation(const Rotation3D &R)
Set rotation.
double getX() const
Get component.
const Vector3D & getVector() const
Get displacement.