Animationen


... [ Seminar "Einführung in Haskell" ] ... [ Inhaltsverzeichnis ] ... [ zurück ] ... [ weiter ] ...

Animationen


Einleitung

So wie Bilder Funktionen des Raumes sind, so können Animationen als Funktionen der Zeit betrachtet werden. Dieses Modell führt zur zeitlichen Unabhängigkeit, die erlaubt, daß Animationen in der Zeit umgewandelt werden, wie Bilder im Raum umgewandelt werden.

type Time = FloatE
type Anim α = Time Image α


Beispiele

Hybrid ist eine Funktion, die zwischen zwei Bilden, basierend auf einer zeit-variirenden Region wechselt. In diesem Beispiel sind die Bilder ein Mädchen und eine Katze.

hybrid :: (TimeE -> Region) -> (TimeE -> ImageC)
hybrid f t = cond (f t) girl cat

Beispiele für Animationsfunktioenen:
turningXPos   t
=
rotate t xPos Lässt die Bilder auf einander rotieren
swirlingXPos t
=
swirl (10 / sin t) xPos Swirlt die Bilder
roamingDisk  t
=
uscale 30 (translate (cos t, sin (2*t)) udisk) Lässt eine Disk auf auf dem oberen Bild kreisen, die das untere Bild durch scheinen lässt
Pos
::
Region
xPos
=
\ (x,y)  x >* 0


Beispiel für turningXPos:

Bild turningXPos

Beispiel für swirlingXPos:

Bild swirling




... [ Seminar "Einführung in Haskell" ] ... [ Inhaltsverzeichnis ] ... [ zurück ] ... [ weiter ] ... [ nach oben ] ...