오늘은 프랙탈 나무를 만드는 또다른 수학을 공부해 보겠습니다~~^^*
바로~~~^^*
바로~~~!!!
바로!!!
L-System의 기본 항목들을 간단하게 손으로 그려보며 이해해 보는 시간을 가져 볼까 해요~~^^*
변수는 A와 B입니다. 상수는 없습니다. A로 시작합니다. A는 AB로 B는 A로 바뀝니다.

변수는 1과 0입니다. 상수는 “[“과 “]”입니다. 시작은 0입니다. 0은 1[0]0으로 변하고 1은 11로 변합니다.
0은 나뭇가지 끝자락을 의미합니다. 잎이 나올 자리입니다.
1은 나무줄기를 의미합니다. 그래서 1은 선을 그리고 나서 가만히 있습니다.
“[“는 push가 시작되고 45도 왼쪽으로 회전합니다.
“]”은 pop이 작동되고 45도 오른쪽으로 회전합니다.
“[” 와 “]”은 stack의 push와 pop기능을 하여, [ ] 사이의 명령어를 수행하고 다시 제자리로 돌아오는 기능을 합니다.
프랙탈 나뭇가지 만들 때 함수 push()와 pop()을 사용했던 것이 떠올려지신다구요~^^*?
네~^^* 그런 것 같아요~~^^*
친숙해진 작업절차를 또 만나니 반갑네요~~^^*
즉, [0]은 왼쪽으로 45도 회전해서 나뭇끝자락을 그리고 제자리로 돌아와서 오른쪽으로 45도 회전한다는 의미가 됩니다~~^^*
1은 “11”로 변화하고, 0은 “1[0]0″로 변화합니다. 즉, 나뭇줄기 1은 길이가 2배 길어지고, 줄기끝자락 0은 줄기가 1 자란 후 왼쪽으로 45도 회전해서 줄기끝자락을 그리고 제자리로 돌아와 오른쪽으로 45도 회전해서 나무끝자락을 그립니다.


오늘은 조류식물과 플랙탈 나무 그리기를 위한 L-System을 이해해 보는 것으로 마무리하면 어떨까요?^^*
단순한 변화 구조가 세대를 거듭하면서 점점 복잡한 형태를 만들어 나가는데요~^^*
초기 세대들의 변화 과정을 이해해 보면, 반복 구조 속의 단순한 코드가 실제로는 어떤 작업절차를 거치게 되는지를 더 잘 상상해낼 수 있을 것 같아요^^*
그래서~~ 손으로 단순규칙의 반복 적용과정을 따라가 보았습니다~^^*
손으로 그려보는 작업은~~^^*
프랙탈 나무 같은 경우는, 특히, “[“와 “]”의 작용의 의미를 이해하는데 매우 도움이 되는 시간이 될 수 있는 것 같아요~^^* “[“와 짝지어진 “]”가 언제 작동되는 지를 따라가 보니~^^* stack의 push()-pop() 함수 관계와 작용이 더 잘 이해되는 것 같아요~~^^*
우리가 원리를 잘 이해하게된 이제는~~^^* 컴퓨터에게 단순절차의 복잡한 반복의 작업을 마음 편하게 맡겨 놓을 수 있을 것 같기도 하구요~~^^*
오늘 저의 오른손을 함께 쥐고 그림을 차근차근 그려 주셔서 감사합니다~^^*
내일은 우리~~^^* 다른 종류의 L-System을 또 만나 볼까요~~^^*
참~~^^* 세상은 호기심을 가지고 들여다 보면~^^* 새롭게 궁금해 지는 것들이 더 많이 보이는 것 같아요~~^^*
세상은 참 신기하고 그래서 더욱 아름답게 느껴지는 아침입니다~~^^*
오늘도 이 멋진 세상에서~^^* 멋진 아침! 멋진 하루! 보내시고요~~^^*
우리 내일 또 만나요~~^^*
네~!!! 꿈은 이루어 집니다~~!!!
댓글 남기기