/* Performs geometrical transformations (rotation, translation) on a vector */ #ifndef VECTORTRANSFORM_H #define VECTORTRANSFORM_H #include #include #include "RotationMatrix.h" class VectorTransform { public: VectorTransform(std::vector vec); void Translate(double xComp, double yComp, double zComp, std::string opt); void Rotate(double angle, RotationMatrix::eAxis axis, std::string opt); void Rotate(std::vector matrixElements, std::string opt); // matrix elements row by row double GetX() {return v[0];} double GetY() {return v[1];} double GetZ() {return v[2];} void Print(); private: std::vector v = std::vector(3); }; #endif // VECTORTRANSFORM_H