Latööcarfian Kings Dream
Under ett par kvällar har jag suttit med ett litet program som ritar ut en fraktal med hjälp av SDL. Ekvationen för fraktalen är tagen från boken Chaos in Wonderland av Clifford A. Pickover, ISBN 0-312-12774-X. Fraktalen kallas Latööcarfian i boken. Kärnan i algoritmen är:
x' = sin(y * b) + c * sin(x * b); y' = sin(x * a) + d * sin(y * a);
där a = -0.966918, b = 2.879879, c = 0.764155 och d = 0.744728 för bilden som kallas “kings dream” i boken. Som en extra touch ändrar jag lite på dessa värden mellan varje frame och ritar sedan om bilden vilket får den att se ut som den rör sig lite spöklikt. Allt finns med i källkoden, som laddas hem med följande kommando:
bzr branch http://vmlinux.org/~av/latoocarfian
För att kompilera bör följande paket vara installerade: build-essential, libsdl1.2-dev och libpng12-dev. För en extra finess, installera även gimp och ffmpeg.
Gå in i katalogen och skriv make för att bygga och make link för att skapa en länk från filter.scm till ~/.gimp-2.4/scripts/. Genom att ange argumentet -p till programmet kommer en massa png-filer skapas. Dessa kan sedan bearbetas med gimp via scriptet gimp.sh (som använder filter.scm, därav länken). Kör bara ./gimp.sh ‘*.png’ efter att bilderna skapats med ./latoocarf -p. Till sist kan en avi-fil
skapas med ffmpeg. Kör ./encodemovie.sh för att göra detta. Naturligtvis går det att skapa en filmfil utan att köra varje frame genom gimp först också. Hoppa bara över gimp.sh.
Om ni inte orkar installera, bygga från källkod, fixa och trixa så finns en kort video på youtube som visar hur det blir. Ganska gålig upplösning dock.

Åh vad kollt, snyggt jobbat!
Joachim Nilsson sade detta juni 28, 2008 vid 16:16 |
Fräckt! Nu blev jag sugen på att realisera min idé om animerade slumppunktsstereogram.
Mårten Wikström sade detta juli 2, 2008 vid 23:06 |
Jag har inte tänkt på det förut, men med den här tekniken kan man ju göra som “amigademos” fast man renderar en frame i taget och sätter ihop till en film sen. Då behöver man inte optimera som en tok för att beräkna i realtid heller. Visserligen fuskigt, men kul ändå.
albertveli sade detta juli 3, 2008 vid 7:51 |