~maus-release/maus/release

« back to all changes in this revision

Viewing changes to src/utilities/event-viewer/RotationMatrix.h

  • Committer: Paolo Franchini
  • Date: 2018-06-24 14:27:26 UTC
  • mfrom: (659.2.80 release-candidate)
  • Revision ID: p.franchini@warwick.ac.uk-20180624142726-nbxxyjyer146dr1t
Tags: MAUS-v3.2.0
MAUS-v3.2.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef ROTATIONMATRIX_H
 
2
#define ROTATIONMATRIX_H
 
3
 
 
4
#include <iostream>
 
5
#include <vector>
 
6
 
 
7
#define PI 3.14159265
 
8
 
 
9
class RotationMatrix {
 
10
 public:
 
11
  enum eAxis {X = 1, Y = 2, Z = 3};
 
12
  static const unsigned int DIM = 3;
 
13
  typedef double matrix[DIM][DIM];
 
14
  
 
15
  RotationMatrix();//add setter to fill this
 
16
  RotationMatrix(double angle, eAxis axis);
 
17
  RotationMatrix(std::vector<double> elements);
 
18
  
 
19
  void PrintMatrix();
 
20
  void Transpose();
 
21
  
 
22
  RotationMatrix operator*(const RotationMatrix& m);
 
23
  std::vector<double> operator*(const std::vector<double>& v);
 
24
  
 
25
 private:
 
26
   matrix mat;
 
27
};
 
28
 
 
29
#endif // ROTATIONMATRIX_H