INTERAKTYWNA KOMUNIKACJA WIZUALNA. Systemy Lindenmayera (L-systemy)

Podobne dokumenty
Systemy Lindenmayera (L-systemy)

Projekt współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego

Obliczenia inspirowane Naturą

samopodobnym nieskończenie subtelny

Algorytmy stochastyczne, wykład 05 Systemy Liendenmayera, modelowanie roślin

Obrazy rekurencyjne. Zastosowanie rekurencji w algorytmice. AUTOR: Martin Śniegoń

FRAKTALE I SAMOPODOBIEŃSTWO

Obliczenia inspirowane Naturą

Modele i symulacje - Scratch i Excel

Zadania domowe. Ćwiczenie 2. Rysowanie obiektów 2-D przy pomocy tworów pierwotnych biblioteki graficznej OpenGL

Fraktale. i Rachunek Prawdopodobieństwa

Fraktale deterministyczne i stochastyczne. Katarzyna Weron Katedra Fizyki Teoretycznej

Podręcznik. Przykład 1: Wyborcy

3.27pt. Algorytmy i programowanie ze Scratchem

FRAKTALE. nie tworzą się z przypadku. Są tworzone naturalnie przez otaczającą nas przyrodę, bądź za pomocą

Fraktale. Jerzy Pogonowski. Funkcje rekurencyjne. Zakład Logiki Stosowanej UAM

Języki formalne i automaty Ćwiczenia 5

Symetrie w architekturze, przyrodzie i sztuce

Modelowanie roślin przy użyciu języków formalnych

L-systemy Lindemayera w 3D. Gramatyki grafowe

Zbiór Cantora. Diabelskie schody.

Fraktale wokół nas. Leszek Rudak Uniwersytet Warszawski. informatyka +

Algorytmy i programowanie ze Scratchem

Plan prezentacji. Cechy charakterystyczne fraktali Zastosowanie fraktali Wymiar fraktalny D. Iteracyjny system funkcji (IFS)

Pracę wykonali: -Bryjak Mateusz -Chudziak Paweł -Palacz Angelika -Skorwider Dariusz

Zastosowanie zmiennej globalnej do sterowania animacją interaktywną. Flash MX 2004

INTERAKTYWNA KOMUNIKACJA WIZUALNA ANIMACJA

Algorytmy stochastyczne, wykład 07 Parametryczne systemy

Matematyczne Podstawy Informatyki

Sierpiński Carpet Project. W ZSTiL Zespół Szkół Technicznych i Licealnych

Maszyna Turinga. Algorytm. czy program???? Problem Hilberta: Przykłady algorytmów. Cechy algorytmu: Pojęcie algorytmu

Symulacje komputerowe w fizyce Fraktale

MODELOWANIE RZECZYWISTOŚCI

2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego

TEORIA GRAFÓW I SIECI

Grafika Komputerowa Materiały Laboratoryjne

Ćwiczenie 14 Dmuchawce

Automat ze stosem. Języki formalne i automaty. Dr inż. Janusz Majewski Katedra Informatyki

Efektywna analiza składniowa GBK

Logo Komeniusz. Gimnazjum w Tęgoborzy. Mgr Zofia Czech

Ćwiczenie 6 Animacja trójwymiarowa

Modele i symulacje - Scratch i Excel

L-systemy. Tworzenie form roślinnych z wykorzystaniem System.Drawing

INTERAKTYWNA KOMUNIKACJA WIZUALNA. Flash - podstawy

2.1. Duszek w labiryncie

Przy dużej wielkości głębokości uzyskamy wrażenie nieskończoności: Dla głębokości zerowej uzyskamy tekst płaski:

Algorytmy i Struktury Danych, 9. ćwiczenia

Definiowanie języka przez wyrażenie regularne(wr)

Metody przybliżonego rozwiązywania równań różniczkowych zwyczajnych

MATeMAtyka 3. Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych. Zakres podstawowy i rozszerzony. Zakres podstawowy i rozszerzony

Lista zadań - Relacje

Instrukcja do zajęć (całość)

Metodologie programowania

Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych

Gramatyki, wyprowadzenia, hierarchia Chomsky ego. Gramatyka

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204

Modelowanie komputerowe

Języki formalne i automaty Ćwiczenia 9

Matematyczna wieża Babel. 4. Ograniczone maszyny Turinga o językach kontekstowych materiały do ćwiczeń

Lokalizacja jest to położenie geograficzne zajmowane przez aparat. Miejsce, w którym zainstalowane jest to urządzenie.

Gra w chaos i sekwencje DNA

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY DRUGIEJ LICEUM OGÓLNOKSZTAŁCĄCEGO ZAKRES PODSTAWOWY

Języki, automaty i obliczenia

która metoda jest najlepsza

MODELOWANIE RZECZYWISTOŚCI

WASM AppInventor Lab 3. Rysowanie i animacja po kanwie PODSTAWY PRACY Z KANWAMI

Modelowanie powierzchniowe cz. 2

11. Pochodna funkcji

1 Równania nieliniowe

GIMNAZJALISTO, ZRÓB TO SAM PROGRAMOWANIE W SCRATCHU

Spis treści. Konwencje zastosowane w książce...5. Dodawanie stylów do dokumentów HTML oraz XHTML...6. Struktura reguł...9. Pierwszeństwo stylów...

Rys.1. Obraz Pollocka. Eyes heat.

Zadanie 1. Algorytmika ćwiczenia

Obliczenia inspirowane Naturą

Jezyki i metody programowania

Hierarchia Chomsky ego

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

Matematyczne Podstawy Informatyki

MODELOWANIE RZECZYWISTOŚCI

PROPOZYCJA ZASTOSOWANIA WYMIARU PUDEŁKOWEGO DO OCENY ODKSZTAŁCEŃ PRZEBIEGÓW ELEKTROENERGETYCZNYCH

Definicja problemu programowania matematycznego

Modelowanie krzywych i powierzchni

Programowanie od pierwszoklasisty do maturzysty. Grażyna Koba

Wprowadzenie do programowania języki i gramatyki formalne. dr hab. inż. Mikołaj Morzy

Teoria Chaosu. Proste modele ze złożonym zachowaniem: o teorii chaosu w ekologii.

L E X. Generator analizatorów leksykalnych

Wyciągnięcie po linii prostej w ujęciu powierzchniowym w NX firmy Siemens Industry Software

Matematyka stosowana i metody numeryczne

Voter model on Sierpiński fractals Model głosujący na fraktalach Sierpińskiego

Symbole mapy numerycznej jako bloki rysunkowe. Elżbieta Lewandowicz Katedra Geodezji Szczególowej

PLAN WYNIKOWY (zakres podstawowy) klasa 2. rok szkolny 2015/2016

raktale są wśród nas Zuzanna Cyunel klasa 5 Szkoła Podstawowa nr 95 ul. Wileńska Kraków Kraków 2012

Algorytmika i pseudoprogramowanie

Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji

INTERAKTYWNA KOMUNIKACJA WIZUALNA

Układy współrzędnych GUW, LUW Polecenie LUW

Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa. Diagnostyka i niezawodność robotów

CYFROWA SYNTEZA FOTOREALISTYCZNYCH OBRAZÓW W ŚRODOWISKU 3D

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

JAO - Wprowadzenie do Gramatyk bezkontekstowych

Transkrypt:

INTERAKTYWNA KOMUNIKACJA WIZUALNA Systemy Lindenmayera ()

Zastosowania: Generowanie fraktali Modelowanie roślin

Fraktale (łac. fractus złamany, cząstkowy) cechy samopodobieństwa Krzywa Kocha (płatek śniegu) Krzywe smocze

Fraktal to zbiór, który: Ma nietrywialną strukturę w każdej skali, struktura ta nie daje się łatwo opisać w języku tradycyjnej geometrii euklidesowej, jest samo-podobny, ma względnie prostą definicję rekurencyjną, ma naturalny ("poszarpany", "kłębiasty" itp.) wygląd.

Generowanie roślin Paproć Bernsleya

L-system to system przepisujący. Przepisywanie: technika definiowania złożonych obiektów przez sukcesywne zastępowane fragmentów prostszych, początkowych obiektów, fragmentami bardziej złożonymi, za pomocą produkcji przepisujących.

Przykład krzywa Kocha

0L-Systemy ( bezkontekstowe) Przykład:

G=(V, s, P) gdzie V={a, b}, s=b, P={a:ab, b:a}

P={a:ab, b:a} Reguła a: ab oznacza, że litera a ma być zastąpiona sekwencją ab. Reguła b: a oznacza, że litera b ma zostać zastąpiona literą a. Proces przetwarzania reguł rozpoczyna się od wyróżnionego słowa zwanego aksjomatem - b. c

V={a, b}, s=b, P={a:ab, b:a}

Przedstawione generują słowa. Dzięki geometrycznej interpretacji tych słów, można wykorzystać do generacji obiektów graficznych (generacja fraktali, modelowanie roślin). Stosuje się tzw. grafikę żółwia" (zbliżoną do koncepcji wykorzystywanej w języku Logo). Każdy symbol w L-systemie jest w takim modelu interpretowany jako określona sekwencja ruchów "żółwia".

www.alife.pl

Zadanie: Zbior Cantora F F:FfF f:fff

Zadanie: Krzywa Kocha F F:F-F++F-F kąt:60

D0L-Systemy (deterministyczne )

D0L-Systemy (deterministyczne ) Czy podany 0L-system jest deterministyczy?

Wszystkie rosliny generowane przez ten sam L-system deterministyczny wyglądają tak samo

0.33 F F[+F]F[ F]F 0.33 F F[+F]F 0.34 F F[ F]F 5 kroków wywodu

kontekstowe 2 używają produkcji postaci: al < a > ar χ, (litera a może wyprodukować słowo χ wtedy i tylko wtedy, gdy jest poprzedzona przez al, a po niej wystepuje ar 1 używaja produkcji postaci: al < a χ a > ar χ

parametryczne Produkcje mają postać: poprzednik : warunek następnik np. A(k) : k<4 B(k*1.5)C(k+3,k-1) aksjomat : B(2)A(4, 4) Przykład: p1 : A(x, y) :y <= 3 A(x 2, x + y) p2 : A(x, y) :y > 3 B(x)A(x/y, 0) p3 : B(x) :x < 1 C p4 : B(x) :x >= 1 B(x 1)

parametryczne Przykład: aksjomat : B(2)A(4, 4) p1 : A(x, y) :y <= 3 A(x 2, x + y) p2 : A(x, y) :y > 3 B(x)A(x/y, 0) p3 : B(x) :x < 1 C p4 : B(x) :x >= 1 B(x 1) B(2)A(4, 4) -> B(1) B(4)A(2, 0) -> CA(4,2)

parametryczne Parametryczne produkcje umożliwiają kształowanie niektórych części roślin dopiero w pewnym stadium rozwoju. Wykorzystanie stałych do generowania form roślinnych pozwala na modelowanie oddziaływania różnego rodzaju czynników środowiskowych (np. kierunku wiatru), na rozwój rośliny.

parametryczne Graficzna interpretacja symboli w L-systemach parametrycznych: F(a) - zrób krok w przód o długości a F(a) - zrób krok w przód o długości a nic nie rysując +(a) - obróć się o kąt a w prawo - (a)- obróć się o kąt a w lewo

parametryczne #define c 1 #define p 0.3 #define q c p #define h (p q) 0.5 aksjomat: F(1) p1 : F(x) F(x p) + F(x h) F(x h) + F(x q)

Animacja rozwoju roślin dyskretny model rozwoju.

Animacja rozwoju roślin z czasem Produkcje są postaci: Globalna zmienna czasowa Lokalne zmienne określające wiek

Animacja rozwoju roślin Drzewo wywodu ciągłego rozwoju rośliny

L-Systemy - Podsumowanie Fraktale Modelowanie roślin Grafika żółwia Rodzaje L-systemów Stochastyczne Kontekstowe Parametryczne Z czasem Animacja wzrostu roślin

Fraktalne zarośla - Flash Algorytm rekurencyjny w klipie zagnieżdżona jego własna kopia Kopie przeskalowywane i obracane D. Hirmes, JD Hooge, K. Jokol, FLASH. AKADEMIA MATEMATYCZNYCH SZTUCZEK

Fraktalne zarośla - Flash Zmiana parametrów skalowania i obrotu - paproć

Fraktalne zarośla - Flash Zmiana parametrów skalowania i obrotu źdźbło trawy

Fraktalne zarośla - Flash Wprowadzenie losowści parametry skalowania i obrotu wybierane losowo Za każdym uruchomieniem powstanie inna roślina Powstanie nowej rośliny inicjowane kliknięciem myszy Exp2_3.swf

Fraktalne zarośla - Flash Wprowadzenie losowści liczba gałęzi wybierana losowo Exp2_4.swf Exp2_5.swf

Fraktalne zarośla - Flash Animacja gałęzi zgodnie z przebiegiem sinusoidy Drzewo wygina się raz w lewo raz w prawo (obrót) Exp2_6.swf

Fraktalne zarośla - Flash Animacja gałęzi zgodnie z przebiegiem sinusoidy Drzewo tańczy (skalowanie) Exp2_6a.swf

Fraktalne zarośla - Flash Położenie gałęzi uzależnione od położenia myszy (obrót) Exp2_7.swf

Fraktalne zarośla - Flash Położenie gałęzi uzależnione od położenia myszy (skalowanie) Exp2_8.swf

Kwiaty - Flash Kopie klipu ułożone wokół wspólnego środka For (var i:numbr=0;i<120;i++) { var nm:movieclip= attachmovie( petal, petal +i,i); nm.x=stage.width/2; nm.y=stage.height/2; flower1.swf nm.rotation=math.random()*30; Nm_xscale=nm_yscale= Math.random()*100+200;

Kwiaty - Flash Dodanie obrotu-każdy płatek obraca się o losowy kąt wokół swojego środka flower6.swf