Przykład: animacje

Animacja pojedynczego obiektu

Animacja opadania pojedynczego obiektu sprowadza się do kolejnego wyświetlania obiektu na ekranie i wymazywania go z ekranu w kolejnych, coraz niższyc pozycjach.

Animacja opadania

void opadaj(Figura& f, int skok, int podest){
  while(f.wiersz < podest){
    f.schowaj();
    delay(0.3);
    f.wiersz+=skok;
    f.pokaz();
    delay(0.3);
  }
}

Klasa Figura w C++

Więcej różnych animacji zaimplementowano w klasie Figura.

Klasa abstrakcyjna Figura

Klasa Kwadrat

Klasa Kolo

Klasa Trojkat

Klasa Gwiazda

Program główny: "Figury"

Inny program główny: "Star wars"

Równoczesna animacja wielu obiektów

Klasa Aktor

Oto przykładowa klasa abstrakcyjna Aktor

class Aktor{
  protected:
    double dx,dy,ds;
    Figura& sylwetka;
  public:
    void virtual uaktualnijAkcje() = 0;
    void virtual animujJednaKlatke(){
      sylwetka.schowaj();
      uaktualnijAkcje();
      sylwetka.x+=dx;
      sylwetka.y+=dy;
      sylwetka.s+=ds;
      sylwetka.pokaz();
    };
};

Zadaniem abstrakcyjnej metody uaktualnijAkcje jest określenie nowych wartości zmiennych dx, dy, ds na przykład w momencie odbicia.

Przykład animacji równoległej w C++

Oto przykład wykorzystania klasy Aktor.

Klasa abstrakcyjna Figura

Klasa Trojkat

Klasa Kwadrat

Klasa abstrakcyjna Aktor

Klasa pochodna Odbijacz

Funkcje pomocnicze

Program główny: "Odbijacze"

Przykład: interfejs kształtu

Interfejs Ksztalt

Klasa ksztaltKwadratu

Klasa ksztaltKola

Klasa ksztaltTrojkata

Klasa KsztaltGwiazdy

Przykład z interfejsem

Klasa abstrakcyjna Aktor

Klasa pochodna Odbijacz

Klasa pochodna CzasteczkaBrowna realizująca aktora poruszającego się ruchami Browna

Klasa pochodna Skoczek realizująca aktora podskakującego

Klasa Wedrownik pochodna od Skoczek

Klasa pochodna Pulsacz realizująca aktora pulsującego

Klasa pochodna Pocisk realizująca aktora reprezentującego zachowanie lecącego pocisku

Funkcje pomocnicze, zawierające abs, min, max i random(double)

Funkcje pomocnicze, realizujące przypadkowy dobór koloru, kształtu i aktora

Program główny realizujący grę wielu przypadkowo dobranych aktorów

Zwiększamy liczbę aktorów na scenie

Klasa KsztaltGwiazdy

Klasa pochodna Spadacz

Program główny "Padający Śnieg" (**)

Kolejny poziom abstrakcji

Klasa abstrakcyjna Dyrektor

Różne pochodne klasy Dyrektor

Klasa skoczki wraz z programem głównym

Klasa odbijacze wraz z programem głównym

Klasa pulsacze wraz z programem głównym

Klasa polimorfizm wraz z programem głównym (*)

Klasa GwiezdneWojny wraz z programem głównym

Klasa padajacySnieg wraz z programem głównym (*)