L-systemy Lindemayera w 3D. Gramatyki grafowe

Podobne dokumenty
Notacja Denavita-Hartenberga

Języki formalne i automaty Ćwiczenia 5

Ćwiczenie nr 3 Edycja modeli bryłowych

Wektor położenia. Zajęcia uzupełniające. Mgr Kamila Rudź, Podstawy Fizyki.

Algorytmy stochastyczne, wykład 07 Parametryczne systemy

Ćwiczenie nr 2 - Rysowanie precyzyjne

INTERAKTYWNA KOMUNIKACJA WIZUALNA. Systemy Lindenmayera (L-systemy)

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

ALGORYTMY I STRUKTURY DANYCH

O czym należy pamiętać?

Badanie ruchu złożenia

Ruch prostoliniowy. zmienny. dr inż. Romuald Kędzierski

" Przekształcenia. 1. Korzystamy z narzędzi Wielokąt i Krzywa. 3. Zmieniamy rozmiar obrazu i pochylamy go

Etap 1. Rysunek: Układy odniesienia

Systemy Lindenmayera (L-systemy)

Wstęp. Ruch po okręgu w kartezjańskim układzie współrzędnych

Definicja obrotu: Definicja elementów obrotu:

Temat: Transformacje 3D

Opis implementacji: Poznanie zasad tworzenia programów komputerowych za pomocą instrukcji języka programowania.

Uwaga! CorelDRAW ćwiczenia kl. III Strona 1 z 6

Rachunek wektorowy - wprowadzenie. dr inż. Romuald Kędzierski

Tworzenie logo. Omówione zagadnienia

Ćwiczenie nr 2 - Rysowanie precyzyjne

- biegunowy(kołowy) - kursor wykonuje skok w kierunku tymczasowych linii konstrukcyjnych;

KGGiBM GRAFIKA INŻYNIERSKA Rok III, sem. VI, sem IV SN WILiŚ Rok akademicki 2011/2012

Tworzenie nowego rysunku Bezpośrednio po uruchomieniu programu zostanie otwarte okno kreatora Nowego Rysunku.

AUTOCAD MIERZENIE I PODZIAŁ

GEOMETRIA ANALITYCZNA W PRZESTRZENI

WIELOKĄTY FOREMNE I ICH PRZEKĄTNE

Arkusz 6. Elementy geometrii analitycznej w przestrzeni

Mobilne Aplikacje Multimedialne

Ćwiczenia - CorelDraw

Grafika Komputerowa Materiały Laboratoryjne

2 1 3 c c1. e 1, e 2,..., e n A= e 1 e 2...e n [ ] M. Przybycień Matematyczne Metody Fizyki I

Politechnika Warszawska Wydział Mechatroniki Instytut Automatyki i Robotyki

1. Wybierz polecenie rysowania linii, np. poprzez kliknięcie ikony W wierszu poleceń pojawi się pytanie o punkt początkowy rysowanej linii:

MECHANIKA 2 RUCH POSTĘPOWY I OBROTOWY CIAŁA SZTYWNEGO. Wykład Nr 2. Prowadzący: dr Krzysztof Polko

Rysowanie precyzyjne. Polecenie:

KINEMATYKA I DYNAMIKA CIAŁA STAŁEGO. dr inż. Janusz Zachwieja wykład opracowany na podstawie literatury

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

CorelDraw - wbudowane obiekty wektorowe - prostokąty Rysowanie prostokątów

Fizyka. dr Bohdan Bieg p. 36A. wykład ćwiczenia laboratoryjne ćwiczenia rachunkowe

GEOMETRIA ANALITYCZNA W PRZESTRZENI

6 Grafika 2D. 6.1 Obiekty 2D

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

MATEMATYKA DYSKRETNA - KOLOKWIUM 2

Prostokąt. AutoCAD pozwala na szybkie rysowanie figur o czterech bokach prostokątów. Do tego celu służy funkcja Prostokąt. Funkcję tą można wywołać:

Ćwiczenie 1 Automatyczna animacja ruchu

ROZWINIĘCIA POWIERZCHNI STOPNIA DRUGIEGO W OPARCIU O MIEJSCA GEOMETRYCZNE Z ZA- STOSOWANIEM PROGRAMU CABRI II PLUS.

Plan wykładu. Wykład 3. Rzutowanie prostokątne, widoki, przekroje, kłady. Rzutowanie prostokątne - geneza. Rzutowanie prostokątne - geneza

Opis ikon OPIS IKON. Ikony w pionowym pasku narzędzi: Ikony te używane są przy edycji mapy. ta ikona otwiera szereg kolejnych ikon, które pozwalają na

Simba 3D LOGO. Cele zajęć: - Poznanie zasad i sposobów tworzenia procedur z parametrami. - Poznanie zasad wywoływania procedur z parametrami.

3.27pt. Algorytmy i programowanie ze Scratchem

TRYGONOMETRIA FUNKCJE TRYGONOMETRYCZNE KĄTA SKIEROWANEGO

PODSTAWY RACHUNKU WEKTOROWEGO

OPISY PRZESTRZENNE I PRZEKSZTAŁCENIA

PRO/ENGINEER. ĆW. Nr. MODELOWANIE SPRĘŻYN

(1,10) (1,7) (5,5) (5,4) (2,1) (0,0) Grafika 3D program POV-Ray

Elektrostatyka. Prawo Coulomba Natężenie pola elektrycznego Energia potencjalna pola elektrycznego

Ćwiczenie pochodzi ze strony

4. Oś Z. 4. Oś Z. Written By: Josef Prusa manual.prusa3d.com/ Page 1 of 17

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D

Grafika inżynierska geometria wykreślna. 5a. Obroty i kłady. Rozwinięcie wielościanu.

CZĘŚĆ A 18 pkt. 3. Które z poniższych brył A, B, C, D przedstawiają bryłę zaznaczoną kolorem szarym?

Drzewa czerwono-czarne.

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

GRAFIKA KOMPUTEROWA podstawy matematyczne. dr inż. Hojny Marcin pokój 406, pawilon B5 Tel.

Bąk wirujący wokół pionowej osi jest w równowadze. Momenty działających sił są równe zero (zarówno względem środka masy S jak i punktu podparcia O).

Ćwiczenie 1 - Modelowanie bryłowe z wykorzystaniem obiektów podstawowych i podstawowych technik modyfikacyjnych

CorelDraw - obiekty tekstowe

Etap III Rok szkolny 2010/2011

str 1 WYMAGANIA EDUKACYJNE ( ) - matematyka - poziom podstawowy Dariusz Drabczyk

ALGORYTMY. Polecenia Skrót Znaczenie Działanie Przykład pż

Nadają się do automatycznego rysowania powierzchni, ponieważ może ich być dowolna ilość.

Modelowanie części w kontekście złożenia

Mechanika ogólna. Kinematyka. Równania ruchu punktu materialnego. Podstawowe pojęcia. Równanie ruchu po torze (równanie drogi)

RÓWNANIE DYNAMICZNE RUCHU KULISTEGO CIAŁA SZTYWNEGO W UKŁADZIE PARASOLA

Obliczenia inspirowane Naturą

Laboratorium grafiki komputerowej i animacji. Ćwiczenie V - Biblioteka OpenGL - oświetlenie sceny

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski. Grafika Komputerowa. Laboratorium. 3dsmax podstawy modelowania

Wykład 5. Komórka elementarna. Sieci Bravais go

Pole magnetyczne magnesu w kształcie kuli

Informatyka w służbie efektów specjalnych. Część druga

Elementy geometrii analitycznej w R 3

Iloczyn wektorowy. Autorzy: Michał Góra

Przekształcenia geometryczne. Dorota Smorawa

Metody stosowane w komputerowym rysowaniu

Geometria analityczna

Grafika komputerowa Wykład 4 Geometria przestrzenna

SCENARIUSZ ZAJĘĆ KOŁA NAUKOWEGO z MATEMATYKI prowadzonego w ramach projektu Uczeń OnLine

Modelowanie motywów łańcuchami Markowa wyższego rzędu

Ćwiczenie nr 1. Kliknij myszką w trójkąt, aby otrzymać dostęp do uchwytów obrotów:

BLENDER- Laboratorium 1 opracował Michał Zakrzewski, 2014 r. Interfejs i poruszanie się po programie oraz podstawy edycji bryły

1. Prymitywy graficzne

Podstawowe zasady modelowania śrub i spoin oraz zestawienie najważniejszych poleceń AutoCAD 3D,

AUTOCAD teoria i zadania z podstaw rysowania Rysowanie linii, prostej, półprostej, punktu, trasy, polilinii. Zadania geodezyjne.

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora.

CorelDRAW. wprowadzenie

0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do

Maskowanie i selekcja

Transkrypt:

L-systemy Lindemayera w 3D Gramatyki grafowe

L-systemy Lindemayera w 3D Kodowanie położenia żółwia w 3D 3 wektor jednostkowe położenia żółwia, Heading, Left,Up Heading to kierunek żółwia Left to kierunek jego lewej ręki Up to kierunek do góry Zachodzi H x L = U (iloczyn wektorowy)

L-systemy Lindemayera w 3D Rotacja połóżenia żółwia + angle (obrót żółwia wzdłuż wersora Up o kąt angle, przeciwnie do ruchu wskazówek zegara) - angle (obrót żółwia wzdłuż wersora Up o kąt angle, zgodnie z ruchem wskazówek zegara)

L-systemy Lindemayera w 3D Rotacja połóżenia żółwia & angle (obrót żółwia wzdłuż wersora Left o kąt angle, zgodnie z ruchem wskazówek zegara) ^ angle (obrót żółwia wzdłuż wersora Left o kąt angle, przeciwnie do ruchu wskazówek zegara)

L-systemy Lindemayera w 3D Rotacja połóżenia żółwia \ angle (obrót żółwia wzdłuż wersora Heading o kąt angle, przeciwnie do ruchu wskazówek zegara) / angle (obrót żółwia wzdłuż wersora Heading o kąt angle, zgodnie z ruchem zegara)

L-systemy Lindemayera w 3D Przykład: Hilber Space Filling Curve

L-systemy Lindemayera w 3D Przykład: Hilber Space Filling Curve A B-F+CFC+F-D&F^D-F+&&CFC+F+B//

L-systemy Lindemayera w 3D Przykład: Hilber Space Filling Curve A B-F+CFC+F-D&F^D-F+&&CFC+F+B//

L-systemy Lindemayera w 3D Przykład: Hilber Space Filling Curve A B-F+CFC+F-D&F^D-F+&&CFC+F+B//

L-systemy Lindemayera w 3D Przykład: Hilber Space Filling Curve A B-F+CFC+F-D&F^D-F+&&CFC+F+B//

L-systemy Lindemayera w 3D Przykład: Hilber Space Filling Curve A B-F+CFC+F-D&F^D-F+&&CFC+F+B//

L-systemy Lindemayera w 3D Przykład: Hilber Space Filling Curve A B-F+CFC+F-D&F^D-F+&&CFC+F+B//

L-systemy Lindemayera w 3D Ile razy zastosowano produkcje?

L-systemy Lindemayera w 3D 7 segmentów

L-systemy Lindemayera w 3D W produkcji A mamy 8 nowych zalążków kostek (B,C,C,D,D,C,C,B) o różnych orientacjach Każda z nich generuje 7 segmentów Dodatkowo w produkcji A mamy 7 łączników F F F F F F F 8*7 segmentów plus 7 łączników

L-systemy Lindemayera w 3D A(red) B(blue) C(green) D(yellow)

Modelowanie liścia Stan początkowy - starting point skierowany do góry G narysuj segment +/- obróć w lewo/prawo {} zamaluj ten wielokąt [ zapisz stan ] odzyskaj stan. zrób wierzchołek

+/- obróć w lewo/prawo F narysuj segment [ zapisz stan ] odzyskaj stan

! Zmniejsz indeks segementów zwiększ numer koloru +- obrót /\ obrót &^ obrót F krawędź L liść A rozgałęzienie A [&FL!A] ///// [&FL!A] /////// [&FL!A] [&FL!A] = [ stan na stos, & obrót, F rysowanie segmentu, L rysowanie liścia, A nowe rozgałęzienie ] stan ze stosu ///// obrót i zmiana koloru

! Zmniejsz indeks segementów &^ obrót wokół lewej ręki F rysuj krawędź L rysuj liść A rozgałęzienie A [&FL!A] ///// [&FL!A] /////// [&FL!A]

! Zmniejsz indeks segementów &^ obrót wokół lewej ręki F rysuj krawędź L rysuj liść A rozgałęzienie A [&FL!A] ///// [&FL!A] /////// [&FL!A]

! Zmniejsz indeks segementów &^ obrót wokół lewej ręki F rysuj krawędź L rysuj liść A rozgałęzienie A [&FL!A] ///// [&FL!A] /////// [&FL!A]

/ obrót zgodnie z ruchem wskazówek zegara wzdłuż osi do przodu F krawędź L liść F S ///// F S F L S = wygeneruj segment oraz narysuj liścia ///// Obracanie płaszczyzny dla następnego liścia F od nowa (czyli wygeneruje segment i narysuj następnego liścia) potem znowu obróć płaszczyzne dla następnego liścia

[ zapamiętaj stan zmień odcień koloru (do rysowania liścia) ^ obróc wokół lewej ręki, przeciwnie do ruch wskazówek zegara {} obrysuj kontur f przesuń bez rysowania L [ ^ ^ {-f +f +f - -f +f +f } ]

[ zapamiętaj stan zmień odcień koloru (do rysowania liścia) ^ obróc wokół lewej ręki, przeciwnie do ruch wskazówek zegara {} obrysuj kontur f przesuń bez rysowania L [ ^ ^ {-f +f +f - -f +f +f } ]

! Zmniejsz indeks segementów zwiększ numer koloru +- obrót /\ obrót &^ obrót F rysuj krawędź f przesuń bez rysowania L liść A rozgałęzienie L [ ^^ {-f+f+f-} {-f+f+f} ] [ stan na stos zmiana kolorów ^^ obrót {-f+f+f-} narysowanie zamalowanego liścia: -/+ obroty, f rysowanie {} zamalowanie segmentu ] stan ze stosu

Japońskie drzewo Modelowanie drzewa

Japońskie drzewo - produkcje

plant = roślina internode = węzeł wewnętrzny flower = kwiat pedicel = pień (również trunk ) wedge = klin seg = segment

/\ obrót w kierunku osi x (lokalny układ rysowacza) &^ obrót w kierunku osi y (lokalny układ rysowacza) +- obrót w kierunku osi z (lokalny układ rysowacza) [ stan na stos; ] stan ze stosu f przesuń bez rysowania F rysuj krawędź

Opis geometrii drzewa (H. Honda) (gramatyki parametryczne)

Opis geometrii drzewa (H. Honda)

Gramatyki parametryczne (H. Honda)

Gramatyki parametryczne (H. Honda)