프랙탈 나무 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

원본 열기

설명

  • 새로 뻗어나가는 가지가 기존 가지의 끝이 아니라 중간 지점에서 난다.
  • 꺽이는 모습이 좀 더 일반적인 나무에 가까운데, 전체적으로 가지의 꺽임이 커서 가지가 말리는 경우도 보인다.