Vecteur.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #ifndef VECTEUR_H_INCLUDED
  2. #define VECTEUR_H_INCLUDED
  3. #include <cmath>
  4. class Vecteur
  5. {
  6. public:
  7. Vecteur();
  8. Vecteur(float x, float y, float z = 0);
  9. Vecteur(const Vecteur &vecteur);
  10. ~Vecteur();
  11. float getX() const;
  12. float getY() const;
  13. float getZ() const;
  14. void setVecteur(float x, float y, float z);
  15. void setX(float x);
  16. void setY(float y);
  17. void setZ(float z);
  18. void normaliser();
  19. Vecteur& operator=(const Vecteur &vecteur);
  20. Vecteur operator+(const Vecteur &vecteur);
  21. Vecteur operator-(const Vecteur &vecteur);
  22. Vecteur operator*(float multiplicateur);
  23. Vecteur operator/(float diviseur);
  24. Vecteur operator*(const Vecteur &vecteur);
  25. void operator*=(const Vecteur &vecteur);
  26. void operator-=(const Vecteur &vecteur);
  27. void operator+=(const Vecteur &vecteur);
  28. void operator*=(float multiplicateur);
  29. void operator/=(float multiplicateur);
  30. float scalair(const Vecteur &vecteur);
  31. bool operator==(const Vecteur &vecteur);
  32. bool operator!=(const Vecteur &vecteur);
  33. double norme();
  34. void rotateR(float angle); // angle en radians
  35. void rotateD(float angle); // angle en degrées
  36. private:
  37. float m_x;
  38. float m_y;
  39. float m_z;
  40. };
  41. #endif // VECTEUR_H_INCLUDED