музика: “The Slackers”

Изследване на 3D L-Системи

Представяме предварителен поглед към новата версия на RABBIT – плъг-ин за Rhino и Grasshopper, разработван от MORPHOCODE. RABBIT 0.2 съдържа няколко нови мощни инструменти – това са компонент за създаване на L–Система и компонент за нейната пространствена интерпретация: 3D Turtle-интерпретатор.

Няколко картинки, направени с RABBIT 0.2

Tree

Trees

Какво представляват L-Системите?

L-Системата е система за паралелно пренаписване на символни низове, състояща се от инициатор или аксиома (“initial string” или “seed”); правила, дефиниращи начина на пренаписване или продукция на символи при всяко следващо поколение (“production rules”). Една проста L-Система изглежда по следния начин:

аксиома: A

правила:

A = AB

B = BA

В случая L-Системата започва с един единствен символ: инициатора ‘A’, който тя пренаписва при всеки следващ символен низ според зададените правила. При всяка итерация е произведена нова “дума”; “n” отбелязва броя на итерациите.

n=0: A

n=1: AB

n=2: ABBA

n=3: ABBABAAB

n=4: ABBABAABBAABABBA

Всички думи формират езика на L-Системата.

Приложение на L-Системите

След първоначалната си дефиниция през 1968 от Аристид Линденмайер, L-Системите намират приложение в различни сфери:

  • моделиране на растения – основно приложение
  • моделиране на фрактали
  • моделиране на криви, запълващи пространството
  • моделиране на растежа на градовете
  • генеративно изкуство
  • генеративна музика
  • в комбинация с еволюционни техники

Съществуват различни видове L-Системи: детерминистичи; стохастични; контекстуално-свободни; параметрични…в зависимост от правилата на продукция и начините им на приложение.

Повече информация по темата:

Hilbert_curve

Hilbert_Curve

RABBIT 0.2 съдържа и компонент 3D Turtle-интерпретатор, който може да се позва в комбинация с компонента L–Система или самостоятелно чрез подаване на инструкции.