사용자 삽입 이미지

코흐곡선



자연에는 황금비도 존재하지만 프랙탈도 존재한다. 아무리 확대해도 결국은 자기 자신인 프랙탈. 어쩌면 나의 내면과도 일맥상통하는듯..

코드:
to koch :l :n
    if :n=0 [fd :l stop]
    koch :l/3 :n-1 lt 60 koch :l/3 :n-1 rt 120 koch :l/3 :n-1 lt 60 koch :l/3 :n-1
end

이를 확장하면 코흐의 눈송이도 그릴 수 있다. 코흐의 눈송이는 코흐의 곡선을 이어붙인 것이다.

사용자 삽입 이미지

코흐의 눈송이는 코흐 곡선을 한 번 그리고 120도 우로회전, 다시 그리고 우로 120도 회전 또 한번 그리면 된다.

repeat 3 [koch 300 6 rt 120]

프로시저를 두 개로 나눠서 kogh_snowflake가 코흐곡선을 세 번 그리는걸로 처리하면 되려나..? 책에서는 어떻게 했을지 궁금하군. 그리고 내 코드는 recursion을 사용하는데, n이 커질수록 속도가 매우 느려지는 단점이 있다. iteration을 사용해서도 구현할 수 있을 것 같은데.