OpenLexocad  27.1
Rotation.h
Go to the documentation of this file.
1 #pragma once
2 
3 namespace Geom
4 {
5 class XYZ;
6 class Vec;
7 
8 } // namespace Geom
9 
10 
11 
12 namespace Geom
13 {
16 class LX_GEOM_EXPORT Rotation
17 {
18 public:
19  Rotation(void);
20  Rotation(const Geom::Vec& axis, const double radians);
21  Rotation(double m[4][4]);
22  void getValue(Geom::Vec& axis, double& radians) const;
23  Rotation& operator*=(double q);
24 
25  Rotation& setValue(double m[4][4]);
26  Rotation& setValue(const Geom::Vec& axis, const double radians);
27 
28  void multVec(const Geom::Vec& src, Geom::Vec& dst) const;
29 
30 private:
31  double quat[4];
32 };
33 
34 } // namespace Geom
Definition: Variant.h:60
Vector3f & operator *=(Vector3f &rclVect, const Matrix4D &rclMtrx)
Definition: Matrix.h:351
Definition: Rotation.h:16
Defines a non-persistent vector in 3D space.
Definition: Vec.h:44