프랙탈 나무 1
설명
- 한 가지에서 새로 뻗어 나가는 가지의 패턴을 반복하는 프랙탈 나무(fractal tree)다.
- 조절할 수 있는 변수는 다음과 같다. 변수를 조작하면, 다양한 프랙탈 나무를 만들 수 있다.
- 첫가지의 시작점과 끝점의 공간좌표
- 가지의 단계수 (단, 첫가지는 0단계다.)
- 가지의 입체각
: 실제 입체각(Solid angle)은 아니고, 아래 그림에서 볼 수 있는 뿔의 단면인 부채꼴의 중심각이다.
입체각 - 위키백과, 우리 모두의 백과사전
ko.wikipedia.org
- 뻗는 가지의 수
: 새로 뻗어 나가는 가지의 수다. 이때, 한 번에 뻗어 나가는 가지 사이의 각은 일정하다. - 가지의 성장비
: 기존 가지의 길이에 대한 새로 뻗어 나가는 가지의 길이의 비다.
- 그리고 한 가지에서 새로 뻗어 나가는 가지를 만드는 알고리즘은 다음과 같다.
한 가지에서 새로 뻗어 나가는 세 가지 - 기존 가지와 수직이고, 기존 가지의 끝점을 지나는 평면에서 기존 가지와 평면의 교점을 원점으로 하는 하나의 2차원 정규직교기저를 만든다. 예를 들어, ax+by+cz=0이라는 평면에 대한 해공간의 기저를 찾으면 만들 수 있다. a, b, c 중에서 적어도 하나는 0이 아니므로 늘 찾을 수 있다.
- 앞서 찾은 기저 {u, v}를 이용하여 같은 원점을 기준으로 임의의 θ에 대하여 정규직교기저 {cosθ·u+sinθ·v, cos(θ+90°)·u+sin(θ+90°)·v}를 기저로 만든다. 임의로 기저를 만드는 이유는 새로 뻗어 나가는 가지의 형태를 다양하게 하기 위함이다.
- 기존의 가지와 평면의 기저를 묶어서 보면 3차원 정규직교기저가 되고, 이 기저를 이용하여 새로 뻗어 나가는 가지를 만든다.
프랙탈 나무 2
설명
- 새로 뻗어나가는 가지가 기존 가지의 끝이 아니라 중간 지점에서 난다.
- 꺽이는 모습이 좀 더 일반적인 나무에 가까운데, 전체적으로 가지의 꺽임이 커서 가지가 말리는 경우도 보인다.