애니메이션 stddraw.show()
에 인수를 전달하면 프로그램은 이후에 또 다른 작업을 진행할 수 있다. 즉 배경 캔버스를 표준 그래픽스 창으로 복사하고 나서 인수로 전달한 숫자의 밀리초만큼만 기다린다. 잠시 후에 살펴보겠지만, 이 기능과 배경 캔버스를 지우는 기능을 결합하면 표준 그래픽스 창 안에 역동성을 부여함으로써 재미있는 효과를 무한히 만들어낼 수 있다. 이런 효과를 이용하면 사람들의 눈길을 끌어모을 수 있다. 이제부터 이런 효과를 만들어내는 방법에 대해 알아보자.
▼ 표 1.5.8 애니메이션 함수들
함수 |
설명 |
stddraw.clear(color) |
모든 픽셀을 color 색상으로 채워 배경 캔버스를 지운다. |
stddraw.show(t) |
표준 그래픽스 창에 그림을 보여주고 t 밀리초 동안 대기한다. |
공 튕기기 텍스트 모드에서 Hello
, World
프로그램이 있다면 애니메이션에서는 캔버스를 돌아다니는 검은 공이 있다. (rx, ry)에 공이 있다고 가정하자. 그런데 이 공을 가령 (rx + 0.01, ry + 0.02) 등의 위치로 움직이는 것처럼 보이게 하려면 다음과 같이 하면 된다.
• 배경 캔버스를 지운다.
• 새로운 위치에 검은 공을 그린다.
• 그림을 보여주고 잠시 기다린다.