|
@@ -0,0 +1,75 @@
|
|
|
+#ifndef ANIMATION_H_INCLUDED
|
|
|
+#define ANIMATION_H_INCLUDED
|
|
|
+
|
|
|
+#include <SDL.h>
|
|
|
+#include <iostream>
|
|
|
+#include <vector>
|
|
|
+
|
|
|
+///Développeur: Jovian Hersemeule
|
|
|
+///Dernière mise à jour le: 13/08/2013
|
|
|
+///Objet: remplissage du cpp, débuggage primaire: nombreux points à ameliorer
|
|
|
+
|
|
|
+/*
|
|
|
+==L'objet Animation (classe abstraite)==
|
|
|
+ +Arguments:
|
|
|
+ VOID
|
|
|
+ +Descriptif:
|
|
|
+ Permet de créer un effet d'animation à partir d'une succession d'image. Classe abstraite,
|
|
|
+ cette classe ne peut produire d'objet mais sert à l'heritage à tous les types d'animation.
|
|
|
+[Fonctions]
|
|
|
+-play:
|
|
|
+ +Arguments:
|
|
|
+ VOID
|
|
|
+ +Renvoi:
|
|
|
+ VOID
|
|
|
+ +Descriptif:
|
|
|
+ Permet de lancer la succession des images, ou de la relancer. Rafraichi l'attribut m_tempsDepart.
|
|
|
+
|
|
|
+-pause:
|
|
|
+ +Arguments:
|
|
|
+ VOID
|
|
|
+ +Renvoi:
|
|
|
+ VOID
|
|
|
+ +Descriptif:
|
|
|
+ Permet de stopper l'animation sur l'image active.
|
|
|
+
|
|
|
+-stop:
|
|
|
+ +Arguments:
|
|
|
+ VOID
|
|
|
+ +Renvoi:
|
|
|
+ VOID
|
|
|
+ +Descriptif:
|
|
|
+ Permet d'arrêter l'animation et de la réenclencher au début.
|
|
|
+
|
|
|
+-coller:
|
|
|
+ +Arguments:
|
|
|
+ -Pointeur sur une SDL_Surface.
|
|
|
+ -Coordonnée d'abscisse.
|
|
|
+ -Coordonnée en ordonnée.
|
|
|
+ -Bool de calibrage: vrai pour centrer, faux pour rectanguler
|
|
|
+ +Renvoi:
|
|
|
+ VOID
|
|
|
+ +Descriptif:
|
|
|
+ Permet de coller sur une surface l'image active. Contient les calculs de sélection d'image.
|
|
|
+
|
|
|
+*/
|
|
|
+
|
|
|
+class Animation
|
|
|
+{
|
|
|
+ public:
|
|
|
+ Animation(Uint32 tempsFrequence);
|
|
|
+ virtual ~Animation();
|
|
|
+ void play();
|
|
|
+ void pause();
|
|
|
+ void stop();
|
|
|
+ virtual void coller(SDL_Surface* support, int x, int y, bool centrer=0)=0;//Virtuelle pure
|
|
|
+
|
|
|
+ protected:
|
|
|
+ std::vector<SDL_Surface*> m_bande;
|
|
|
+ const Uint32 m_tempsFrequence;//Tps en ms entre chq img
|
|
|
+ Uint32 m_tempsDepart;//"heure" en ms du départ de l'anim
|
|
|
+ Uint16 m_imageActive;
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+#endif // ANIMATION_H_INCLUDED
|