SlideShare a Scribd company logo
1 of 22
Граматики за
                генеративно изкуство

●   Шарка на Труше

●   L – системи

    ●   Идея

    ●   Описание

    ●   Демонстрации

    ●   Софтуер


Подготвени от Г.Пенков като част от курса на ФМИ за зимен семестър 2010/2011. Заглавното
изображение адаптирано от оригиналната граматика от http://contextfree.lazymoon.org.
Шарка на Труше
●   Себастиен Труше е френски монах от Доминиканския
    орден, живял през 17/18в.
●   Известен с постиженията си в областта на
    хидравликата, графиката, математиката и типографията
●   През 1704 разглежда всички възможни форми, които се
    получават от подредбата на правоъгълни триъгълници
    разположени в четерите края на квадрат.
Разновидности
●   При замяна на шартката с други основни
    форми се получават интересни резултати:
Разновидности...
?
От галерията на Contexfree.org




                        Eco by Aihle
        http://www.contextfreeart.org/gallery/view.php?id=1937
От галерията на Context Free
startshape D
 
rule D
{
  C {r 15}
  C {r 45}
}
rule C
{
  B {}
  B {f -90}
}
 
rule B
{
  A {}
  A {r 60}
  A { r 120 }
  A { r 180 }
  A { r 240 }
  A { r 300 }
}
 
rule A
{
  CIRCLE {s 1 .0006}
  A {x .9 r 120.21 s .99 b .0005 }
}                                                                     Star by Latex
                                     http://www.contextfreeart.org/gallery/view.php?id=45
Линдемаер системи
●   Разработени от биолога Аристид Линденмаер
●   Пъвоначално създадени за моделиране растежа
    на водорасли и други растения
●   Използвали са се за илюстриране отношенията м/у
    съседните клетки
●   В последствие се превръщат в стандартен метод
    за описание на сложни структури с разклонения
●   Рекурсивната натура на L-system ги прави
    подходящи за описание на фрактали
●   Намират разнообразно приложение при
    създаването на генеративни структури
L-Systems
●   Описват се от множеството:

                                        G = (V, ω , Σ)

●   ...където
    ●   V е множество от символи, всеки от който може да има извод (да бъде разписан в
        друг)
    ●   ω е аксиома
    ●   Σ – множество от правила за извод
●   Нарича се още Semi-Thue граматика, еквивалент на граматика от Тип 0 (общ
    тип)
●   Обикновено се смята, че са от някакъв порядък
●   Разликата с другите граматики от формализма на Чомски е, че на всяка
    итерация се прилагат всички възможни правила и така се поражда
    следващия порядък. Т.е. Заместват се всички символи едновременно.
●   Сама по себе си разписаната дума е символен низ, графичният смисъл се
    придава в последствие.
L-System vs. CFDG
●   L-systems се описват с граматики от по-общ вид, докато
    CFDG граматиките са контекстно свободни.
●   Продуктът от Линдемаер системите е първо символен
    (едномерен), а в последствие придобива многомерен
    смисъл.
●   Преди да е генериран символния низ, резултат от
    прилагането на L-system не може да за почне реалното
    изграждане на структурата
●   Пространството, в което се развиват L-Systems е
    двуизмерна или триизмерна координатна система.
●   За разлика от CFDG няма трансформационно
    пространство за всеки извод
Пример – Cantor Dust
   ●   Променливи : A B                  ( Порядък ) Резултат
       ●   А - рисувай и се движи
                                         (1) А
       ●   B - движи се без да рисуваш
                                         (2) ABA
   ●   Аксиома : A
                                         (3) ABABBBABA
   ●   Правила
                                         (4) ABABBBABABBBBBBBBBABABBBABA
       ●   (A → ABA)
       ●   (B → BBB)

1...
2...
3...
4...
5...
6...
7...
Крива на Кох
●   Променлива(и) : F         n = 0:

●   Константи : + −           F

    ●   + e ротация на 90'
                              n = 1:
    ●   - е ротация на -90'
                              F+F-F-F+F

                              n = 2:
●   Аксиома : F
                              F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F-F+F+F+F-F-
        означава движение и   F+F
        рисуване напред с
        единица разстояние
                              n = 3:

●   Правило за извод :        F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F-F+F+F+F-F-
                              F+F+ F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F-
        (F → F+F−F−F+F)
                              F+F+F+F-F-F+F- F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-
                              F+F-F-F+F+F+F-F-F+F- F+F-F-F+F+F+F-F-F+F-F+F-F-
                              F+F-F+F-F-F+F+F+F-F-F+F+ F+F-F-F+F+F+F-F-F+F-
                              F+F-F-F+F-F+F-F-F+F+F+F-F-F+F
Формално описание на L-Systems
●   Описва се движението на 'костенурката' в N- мерно пространство (най-често
    2D).
    ●   Например в двумерно пространство състоянието на костенурката се определя от
        тройката (x, y, a), където (x, y) са Картезиеви координати, а (a) е текущата
        ориентация
●   Придава се конкретен смисъл на някои символи, които се разписват по-
    късно от L-System
●   Задават се константи, напимер определящи стандартен ъгъл на завъртане,
    дължина на изрисуваната отсечка и т.н.
●   В зависимост от вида на системата може да бъде въведен и символ за
    запазване на текущaта позиция на 'костенурката' и съответно с възможност
    за последващо възстановяване.
    ●   Това позволява разписване на разклонения
    ●   Крайният резултат ще може да има и множество “вложени” състияния
●   Правилата за извод в L-Systems могат да бъдат и със стохастичен характер
    ●   Позволява герериране на серии от подобни резултати
    ●   Въвеждат елемент на случайност в един и същ резултат
Формално описание на L-Systems
Angle={COUNT}          : задаване на ъгъла използван от '+' and '-' да е
                         равен на 360 / {COUNT} градуса

Axiom {COMMANDS} : начално множество от команди {COMMANDS}

{COUNT}+ : завой вляво {COUNT} пъти. Ако {COUNT} липсва - 1
{COUNT}- : завой вдясно {COUNT} пъти. Ако {COUNT} липсва - 1

|         : завой на 180 градуса или на най-големия възможен завой
по-малък от 180 градуса

f, d        : рисуване на линия използвйаки текущата посока и дължина
g, m        : движение напред вместо рисуване

 {ANGLE} : завой вляво на {ANGLE} градуса
/ {ANGLE} : завой вдясно на {ANGLE} градуса

[      : запазване на състоянието (позиция, ъгъл, размер и т.н.)
]      : възстановяване на състоянието
Формално описание на L-System

!    : инвертиране смисъла на +, - и  и /
 @{SCALE} : скалиране на дадената линия {SCALE} пъти
 @q{SCALE} : саклиране на степен квадратен корен от
{SCALE}
 @I{SCALE} : скалиране с 1 / {SCALE}
c{INDEX} : задаване на цветови индекс {INDEX}
<{COUNT} : увеличаване на цветовия индекс с {COUNT}
>{COUNT} : намаляване на цветовия индекс с {COUNT}
 {LETTER}={COMMANDS} : асоцииране на {COMMANDS} със
символа {LETTER}
Крива на КОХ като L-system
Koch1 {
; адаптация на Adrian Mariano
; от книгата The Fractal Geometry of Nature
; от Беноа Маделброт

     Angle 6
     Axiom F--F--F
     F = F+F--F+F
 }




                                              последователни генерации
Модели на растения


   аксиома: F 
   правило: F -> F[-F]F[+F][F]

                                 1     2        3            4            5




Bush { ; Adrian Mariano              Weed {
  Angle 16                             Angle 50
  Axiom ++++F                          Axiom +++++++++++++x
  F=FF-[-F+F+F]+[+F-F-F]               x=f[@.5+++++++++x]-f[@.4-----------!x]@.6x
  }                                    }
Някои популярни криви
                 представени с L-Systems
                                                                                                                 Hilbert curve
                                          32-segment curve




F -> -F+F-F-F+F+FF-F+F+FF+F-F-FF+FF-FF+F+F-FF-F-F+FF-F-F+F+F-F+   L -> +RF-LFL-FR+, R -> -LF+RFR+FL-



                                           Peano-Gosper curve                                                    Square curve




                                    X -> X+YF++YF-FX—FXFX-YF+
                                    Y -> -FX+YFYF++YF+FX—FX-Y
                                    60°                                                                X -> XF-F+F-XF+F+XF-F+F-X
Dragon Curve
                                      3
             1            2




                      4
X -> X+YF+
Y -> -FX-Y                        5

                                      6




                              8
                  7                       9
Визуализация на L-Systems
●   С Context Free е по-сложно
    ●   Няма възможност за извод при разписване на пътища
    ●   Изрисуването става на всяка итерация на разписване на
        правила, а не само в последния порядък
●   Със Structure Synth е възможно, защото има механизъм
    за ограничаване дълбочината на извода
●   С помоща на FractInt
●   С помоща на Fractal Science Kit
    ●   Описаната система е типична за Fractal Science Kit
    ●   Общоприет запис, който се използва и от други софтуерни
        пакети
●   Ръчно – с наш собствен скрипт
Библиография
●   http://mathworld.wolfram.com/TruchetTiling.html - шарка на Труше

●   http://www.biologie.uni-hamburg.de/b-online/e28_3/lsys.html - Обща
    информация за L-Systems

●   en.wikipedia.org/wiki/L-system – още едно въведение за L-Systems

●   http://www.nahee.com/spanky/www/fractint/lsys/tutor.html - мощното
    ръководство за L-Systems с множество примери

●   http://algorithmicbotany.org/ - Визуални модели за морфогенезис
Софтуер за L-Systems

●   http://www.javaview.de/vgp/tutor/lsystem/PaLSystem.html - прост аплет за
    експерименти с L-Systems (Java)


●    http://web.mit.edu/~eric_r/Public/lsystems/ - прост аплет за бързо моделиране
    на 3D L-Systems (Java/Processing)

●   http://mathworld.wolfram.com/LindenmayerSystem.html - Детайли за някои
    популярни L-Systems

●   http://www.generation5.org/content/2002/lse.asp - просто приложение за
    изследване на L-Systems

●   http://www.fractalsciencekit.com/ - Fractal Science Kit

●   http://www.nahee.com/spanky/www/fractint/fractint.html - официален сайт на
    FractInt. Текуща версия 20.0

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Grammars for Generative Art - Lectures @ Sofia University #6

  • 1. Граматики за генеративно изкуство ● Шарка на Труше ● L – системи ● Идея ● Описание ● Демонстрации ● Софтуер Подготвени от Г.Пенков като част от курса на ФМИ за зимен семестър 2010/2011. Заглавното изображение адаптирано от оригиналната граматика от http://contextfree.lazymoon.org.
  • 2. Шарка на Труше ● Себастиен Труше е френски монах от Доминиканския орден, живял през 17/18в. ● Известен с постиженията си в областта на хидравликата, графиката, математиката и типографията ● През 1704 разглежда всички възможни форми, които се получават от подредбата на правоъгълни триъгълници разположени в четерите края на квадрат.
  • 3. Разновидности ● При замяна на шартката с други основни форми се получават интересни резултати:
  • 5. ?
  • 6. От галерията на Contexfree.org Eco by Aihle http://www.contextfreeart.org/gallery/view.php?id=1937
  • 7. От галерията на Context Free startshape D   rule D { C {r 15} C {r 45} } rule C { B {} B {f -90} }   rule B { A {} A {r 60} A { r 120 } A { r 180 } A { r 240 } A { r 300 } }   rule A { CIRCLE {s 1 .0006} A {x .9 r 120.21 s .99 b .0005 } } Star by Latex http://www.contextfreeart.org/gallery/view.php?id=45
  • 8. Линдемаер системи ● Разработени от биолога Аристид Линденмаер ● Пъвоначално създадени за моделиране растежа на водорасли и други растения ● Използвали са се за илюстриране отношенията м/у съседните клетки ● В последствие се превръщат в стандартен метод за описание на сложни структури с разклонения ● Рекурсивната натура на L-system ги прави подходящи за описание на фрактали ● Намират разнообразно приложение при създаването на генеративни структури
  • 9. L-Systems ● Описват се от множеството: G = (V, ω , Σ) ● ...където ● V е множество от символи, всеки от който може да има извод (да бъде разписан в друг) ● ω е аксиома ● Σ – множество от правила за извод ● Нарича се още Semi-Thue граматика, еквивалент на граматика от Тип 0 (общ тип) ● Обикновено се смята, че са от някакъв порядък ● Разликата с другите граматики от формализма на Чомски е, че на всяка итерация се прилагат всички възможни правила и така се поражда следващия порядък. Т.е. Заместват се всички символи едновременно. ● Сама по себе си разписаната дума е символен низ, графичният смисъл се придава в последствие.
  • 10. L-System vs. CFDG ● L-systems се описват с граматики от по-общ вид, докато CFDG граматиките са контекстно свободни. ● Продуктът от Линдемаер системите е първо символен (едномерен), а в последствие придобива многомерен смисъл. ● Преди да е генериран символния низ, резултат от прилагането на L-system не може да за почне реалното изграждане на структурата ● Пространството, в което се развиват L-Systems е двуизмерна или триизмерна координатна система. ● За разлика от CFDG няма трансформационно пространство за всеки извод
  • 11. Пример – Cantor Dust ● Променливи : A B ( Порядък ) Резултат ● А - рисувай и се движи (1) А ● B - движи се без да рисуваш (2) ABA ● Аксиома : A (3) ABABBBABA ● Правила (4) ABABBBABABBBBBBBBBABABBBABA ● (A → ABA) ● (B → BBB) 1... 2... 3... 4... 5... 6... 7...
  • 12. Крива на Кох ● Променлива(и) : F n = 0: ● Константи : + − F ● + e ротация на 90' n = 1: ● - е ротация на -90' F+F-F-F+F n = 2: ● Аксиома : F F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F-F+F+F+F-F- означава движение и F+F рисуване напред с единица разстояние n = 3: ● Правило за извод : F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F-F+F+F+F-F- F+F+ F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F- (F → F+F−F−F+F) F+F+F+F-F-F+F- F+F-F-F+F+F+F-F-F+F-F+F-F-F+F- F+F-F-F+F+F+F-F-F+F- F+F-F-F+F+F+F-F-F+F-F+F-F- F+F-F+F-F-F+F+F+F-F-F+F+ F+F-F-F+F+F+F-F-F+F- F+F-F-F+F-F+F-F-F+F+F+F-F-F+F
  • 13. Формално описание на L-Systems ● Описва се движението на 'костенурката' в N- мерно пространство (най-често 2D). ● Например в двумерно пространство състоянието на костенурката се определя от тройката (x, y, a), където (x, y) са Картезиеви координати, а (a) е текущата ориентация ● Придава се конкретен смисъл на някои символи, които се разписват по- късно от L-System ● Задават се константи, напимер определящи стандартен ъгъл на завъртане, дължина на изрисуваната отсечка и т.н. ● В зависимост от вида на системата може да бъде въведен и символ за запазване на текущaта позиция на 'костенурката' и съответно с възможност за последващо възстановяване. ● Това позволява разписване на разклонения ● Крайният резултат ще може да има и множество “вложени” състияния ● Правилата за извод в L-Systems могат да бъдат и със стохастичен характер ● Позволява герериране на серии от подобни резултати ● Въвеждат елемент на случайност в един и същ резултат
  • 14. Формално описание на L-Systems Angle={COUNT} : задаване на ъгъла използван от '+' and '-' да е равен на 360 / {COUNT} градуса Axiom {COMMANDS} : начално множество от команди {COMMANDS} {COUNT}+ : завой вляво {COUNT} пъти. Ако {COUNT} липсва - 1 {COUNT}- : завой вдясно {COUNT} пъти. Ако {COUNT} липсва - 1 | : завой на 180 градуса или на най-големия възможен завой по-малък от 180 градуса f, d : рисуване на линия използвйаки текущата посока и дължина g, m : движение напред вместо рисуване {ANGLE} : завой вляво на {ANGLE} градуса / {ANGLE} : завой вдясно на {ANGLE} градуса [ : запазване на състоянието (позиция, ъгъл, размер и т.н.) ] : възстановяване на състоянието
  • 15. Формално описание на L-System ! : инвертиране смисъла на +, - и и / @{SCALE} : скалиране на дадената линия {SCALE} пъти @q{SCALE} : саклиране на степен квадратен корен от {SCALE} @I{SCALE} : скалиране с 1 / {SCALE} c{INDEX} : задаване на цветови индекс {INDEX} <{COUNT} : увеличаване на цветовия индекс с {COUNT} >{COUNT} : намаляване на цветовия индекс с {COUNT} {LETTER}={COMMANDS} : асоцииране на {COMMANDS} със символа {LETTER}
  • 16. Крива на КОХ като L-system Koch1 { ; адаптация на Adrian Mariano ; от книгата The Fractal Geometry of Nature ; от Беноа Маделброт Angle 6 Axiom F--F--F F = F+F--F+F } последователни генерации
  • 17. Модели на растения   аксиома: F    правило: F -> F[-F]F[+F][F] 1 2 3 4 5 Bush { ; Adrian Mariano Weed { Angle 16 Angle 50 Axiom ++++F Axiom +++++++++++++x F=FF-[-F+F+F]+[+F-F-F] x=f[@.5+++++++++x]-f[@.4-----------!x]@.6x } }
  • 18. Някои популярни криви представени с L-Systems Hilbert curve 32-segment curve F -> -F+F-F-F+F+FF-F+F+FF+F-F-FF+FF-FF+F+F-FF-F-F+FF-F-F+F+F-F+ L -> +RF-LFL-FR+, R -> -LF+RFR+FL- Peano-Gosper curve Square curve X -> X+YF++YF-FX—FXFX-YF+ Y -> -FX+YFYF++YF+FX—FX-Y 60° X -> XF-F+F-XF+F+XF-F+F-X
  • 19. Dragon Curve 3 1 2 4 X -> X+YF+ Y -> -FX-Y 5 6 8 7 9
  • 20. Визуализация на L-Systems ● С Context Free е по-сложно ● Няма възможност за извод при разписване на пътища ● Изрисуването става на всяка итерация на разписване на правила, а не само в последния порядък ● Със Structure Synth е възможно, защото има механизъм за ограничаване дълбочината на извода ● С помоща на FractInt ● С помоща на Fractal Science Kit ● Описаната система е типична за Fractal Science Kit ● Общоприет запис, който се използва и от други софтуерни пакети ● Ръчно – с наш собствен скрипт
  • 21. Библиография ● http://mathworld.wolfram.com/TruchetTiling.html - шарка на Труше ● http://www.biologie.uni-hamburg.de/b-online/e28_3/lsys.html - Обща информация за L-Systems ● en.wikipedia.org/wiki/L-system – още едно въведение за L-Systems ● http://www.nahee.com/spanky/www/fractint/lsys/tutor.html - мощното ръководство за L-Systems с множество примери ● http://algorithmicbotany.org/ - Визуални модели за морфогенезис
  • 22. Софтуер за L-Systems ● http://www.javaview.de/vgp/tutor/lsystem/PaLSystem.html - прост аплет за експерименти с L-Systems (Java) ● http://web.mit.edu/~eric_r/Public/lsystems/ - прост аплет за бързо моделиране на 3D L-Systems (Java/Processing) ● http://mathworld.wolfram.com/LindenmayerSystem.html - Детайли за някои популярни L-Systems ● http://www.generation5.org/content/2002/lse.asp - просто приложение за изследване на L-Systems ● http://www.fractalsciencekit.com/ - Fractal Science Kit ● http://www.nahee.com/spanky/www/fractint/fractint.html - официален сайт на FractInt. Текуща версия 20.0