homedukeOOP mit Java: Animation Prof. Dr. Uwe Schmidt FH Wedel

Animation

weiter

weiter

Animation durch einen eigenen thread

//--------------------
 
public
class Animation
  extends Applet
  implements Runnable
{
 
  //--------------------
 
  public
  void init() {
    // ...
  }
 
  //--------------------
 
  public
  void destroy() {
    // ...
  }
 
  //--------------------
  // der animator thread
 
  Thread animatorThread;
 
  public
  void start() {
 
    // animator thread erzeugen
    // und starten
    if ( animatorThread == null ) {
      animatorThread = new Thread(this);
    }
    animatorThread.start();
  }
  
  //--------------------
 
  public
  void stop() {
    // animator thread vernichten
    animatorThread = null;
  }
 
  //--------------------
  // das run interface
 
  public
  void run() {
    
    while (Thread.currentThread() == animatorThread) {
 
      // ...
      // neue Animationsdaten berechnen
      // und zeichnen
      repaint();
 
      // ausruhen
      sleepAWhile();
    }
  }
 
  //--------------------
  // eine zeitlang nichts tun
 
  int someDelay;
 
  protected
  void sleepAWhile() {
    try {
      animatorThread.sleep(someDelay);
    }
    catch (InterruptedException e) {
    }
  }
}
 
//--------------------
weiter

weiter

Animation und Bilder

Animations-thread
zum Steuern der Animation und zum Entkoppeln der Animation von dem restlichen Programm.
 
Typischer Verbraucher-Prozess in einer Erzeuger-Verbraucher Architektur
weiter
Animation mit Bildern
Animation mit einer Sequenz von Bildern
 
Beispiel: Daumenkino
weiter
zum Überwachen des Ladens von Bildern und zum Synchronisieren des Zeichnens und Ladens.
 
weiter

Letzte Änderung: 14.02.2012
© Prof. Dr. Uwe Schmidt
Prof. Dr. Uwe Schmidt FH Wedel