2011년 9월 28일 수요일

터틀 모듈로 만드는 Fractal

이 포스트 내 코드는 Microsoft사 Small Basic Getting Started Guide의 Appendix A: Fun Samples에 게재된 Turtle Fractal을 python으로 포팅한 것이다.

터틀 그래픽 모듈에 관한 설명은 이전 포트스를 참조토록 한다.

pyscripter 혹은 python IDLE에서 아래와 같이 코드를 작성한다.

2011-09-28 오후 3-14-48

위 draw(x) 함수는

1. 파라메터 x 값(초기 값 60) 만큼 turtle 객체 인스턴스인 alex를 이동

2. theta(30도) 만큼 좌측으로 회전

3. distance를 이동 감쇠 상수 delta(기본 값 10) 만큼 감소 시킨 값을 파라메터로 재귀호출

[재귀 반복]

4. turtle 인스턴스를 우측으로 theta * 2만큼 회전

5. 3과 같은 파라메터 값을 주고 재귀호출

[재귀 반복]

6. turtle 인서턴스를 좌측으로 theta 만큼 회전

7. turtle 인스턴스를 x 값만큼 뒤로 이동

한다. 위 코드 실행 결과는 다음과 같다.

2011-09-28 오후 3-15-12

위 코드를 아래 같이 수정 후 실행 시, 결과는 그 아래 그림과 같다.

2011-09-28 오후 3-14-50

2011-09-28 오후 3-15-57

 

프랙탈과 관련해서 좀 더 알고 싶다면 아래 링크를 참조하거나 혹은 Wolfram Research 사의 Wolfram 아저씨 글이나 책을 찾아보면 좋다.

1. http://en.wikipedia.org/wiki/Fractal

댓글 없음:

댓글 쓰기