Animation.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. #ifndef ANIMATION_H_INCLUDED
  2. #define ANIMATION_H_INCLUDED
  3. #include <SDL/SDL.h>
  4. #include <iostream>
  5. #include <vector>
  6. ///Développeur: Jovian Hersemeule
  7. ///Dernière mise à jour le: 13/08/2013
  8. ///Objet: remplissage du cpp, débuggage primaire: nombreux points à ameliorer
  9. /*
  10. ==L'objet Animation (classe abstraite)==
  11. +Arguments:
  12. VOID
  13. +Descriptif:
  14. Permet de créer un effet d'animation à partir d'une succession d'image. Classe abstraite,
  15. cette classe ne peut produire d'objet mais sert à l'heritage à tous les types d'animation.
  16. [Fonctions]
  17. -play:
  18. +Arguments:
  19. VOID
  20. +Renvoi:
  21. VOID
  22. +Descriptif:
  23. Permet de lancer la succession des images, ou de la relancer. Rafraichi l'attribut m_tempsDepart.
  24. -pause:
  25. +Arguments:
  26. VOID
  27. +Renvoi:
  28. VOID
  29. +Descriptif:
  30. Permet de stopper l'animation sur l'image active.
  31. -stop:
  32. +Arguments:
  33. VOID
  34. +Renvoi:
  35. VOID
  36. +Descriptif:
  37. Permet d'arrêter l'animation et de la réenclencher au début.
  38. -coller:
  39. +Arguments:
  40. -Pointeur sur une SDL_Surface.
  41. -Coordonnée d'abscisse.
  42. -Coordonnée en ordonnée.
  43. -Bool de calibrage: vrai pour centrer, faux pour rectanguler
  44. +Renvoi:
  45. VOID
  46. +Descriptif:
  47. Permet de coller sur une surface l'image active. Contient les calculs de sélection d'image.
  48. */
  49. class Animation
  50. {
  51. public:
  52. Animation(Uint32 tempsFrequence);
  53. virtual ~Animation();
  54. void play();
  55. void pause();
  56. void stop();
  57. virtual void coller(SDL_Surface* support, int x, int y, bool centrer=0)=0;//Virtuelle pure
  58. protected:
  59. std::vector<SDL_Surface*> m_bande;
  60. const Uint32 m_tempsFrequence;//Tps en ms entre chq img
  61. Uint32 m_tempsDepart;//"heure" en ms du départ de l'anim
  62. Uint16 m_imageActive;
  63. };
  64. #endif // ANIMATION_H_INCLUDED