또 한가지 재미있는 사실은 형태가 단순하게 점점 배수로 작아지면서 원의 가운데 수평지점으로 무한대로 펼져진다는 것이다. 영어로 표현하면 'Circular infinity'라고 할 수 있는데, 우리말로 표현하려면 '원형순환프랙탈' 정도가 적당할 듯 싶다.
영국에서 발견된 크롭써클. 무한원형프랙탈이다.
.구현 프로그램 설명
프랙탈은 자연과 우주의 섭리를 내포하고 있다. 우리가 살고있는 세상은 다차원 프랙탈의 구조로 설명할 수 있다. 미스테리 크롭써클에서도 이런 형태(가짜도 많이 있지만)를 많이 볼 수 있어서 흥미롭다. 관련 알고리즘은 찾아볼까 했는데 자료가 별로 없다. 그러나 프로세스 구조는 단순하기에 시간을 들여 구상하여 작성하여 보았다. 사실상 무한대이지만 프로그램은 원의 크기가 0 에 가까와질 때까지 반복한다. 언어는 blitzbasic을 사용하였다. 변수뒤의 #은 실수형을 의미한다. C언어의 경우 2byte 실수형인 double형을 사용하면 된다.
;Written By Daeyong Kwon
;http://fractalart.tistory.com
;Tip: Use Blitz Basic For Execution http://www.blitzbasic.com
Global cx#=120 ;Circle x position
Global cy#=40 ;Ciecle y position
Global sz#=400 ;Circle Size
cn= 1 ;Counter value
cx2# = cx#
cy2# = cy#+sz#/4
sz2# = sz#/2
Graphics 640,480,0,2 ;set graphic mode
Oval cx#,cy#, sz#,sz#,0 ; Creat root circle 최초 원을 생성
While (sz2# > 1) ;Iteration(순환반복)
For i = 0 To cn-1
Oval cx2#, cy2#, sz2#,sz2#,0 ;Render 1st Circle
Oval cx2#+sz2#,cy2#, sz2#,sz2#,0 ;Render 2nd Circle
cx2#=cx2#+sz2#*2 ; move pair x position
Next
cn = cn*2
cx2#= cx#
sz2# = sz2#/2
cy2# = cy2#+sz2#/2
Wend
WaitKey()
Color coordination
'About Fractal' 카테고리의 다른 글
프랙탈 나무(Fractal Tree) (1) | 2008.12.22 |
---|---|
코흐곡선(Koch Curve) (0) | 2008.12.13 |
베이직(basic)언어로 구현한 시에르핀스키삼각형(Sierpinski Gasket) (1) | 2008.11.29 |
프랙탈 이야기 2편 (1) | 2008.11.22 |
프랙탈 이야기 1편 (2) | 2008.11.22 |