Natknąłem się przypadkowo na interesujący program graficzny - Context Free - narzędzie służące do tworzenia algorytmicznej grafiki.
![]() |
![]() |
![]() |
![]() |
Używa się go w niestandardowy sposób, mianowicie nie rysuje się nic na ekranie, ani na kartce - zamiast tego zadaniem artysty jest stworzenie opisu grafiki w specjalnym języku programowania. Pomysł ten jest krewniakiem idei muzyki algorytmicznej, o której pisałem przy okazji omawiania csound'a . Przypomniałem sobie o swoich starych eksperymentach z tworzeniem algorytmicznej grafiki bezpośrednio w języku C: oto wizerunek "tęczowej planety" i fragment kodu programu, który go narysował. Dość złożony obraz powstaje w wyniku działania tak prostej funkcji !
#define tfi(x) (0.5*(x+1)) float calc_color( float x, float y, int rgb ) { float d, K; d = (x-0.4) * (y-0.3) - 0.04; if ( d < 0 ) K = 0; else if ( d < 0.03 ) { K = 1 - (0.03 - d)/0.03; } else K = 1; switch ( rgb ) { case 0: return K * tfi(sin( 41 * x*y )); case 1: return K * tfi(cos( 13 * x )); default: return K * tfi(cos( 28 * y )); } }
Brak komentarzy:
Prześlij komentarz