티스토리 뷰

 

파이썬 패키지인 turtle을 이용하면 그림을 그릴 수 있습니다. 이번 게시글에서는 turtle을 사용해 다양한 도형을 그릴 수 있는 코드를 소개할 것인데, 그 전에 선행되어야 하는 것은 거북이가 그림을 그릴 수 있는 환경을 만들어주는 설정에 대한 코드를 작성하는 일입니다.

 

일단 아래와 같이 코드를 작성해줍니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import turtle
# 각종 설정
player = turtle.Turtle()
player.color("purple"#색깔 정하기(원하는 색깔 기입 가능)
player.shape("turtle"#모양 정하기
player.speed(0#속도는 숫자가 작을수록 빠름
screen = player.getscreen()
 
'''
이 부분을 어떻게 작성하냐에 따라서 
거북이가 어떤 그림을 그릴지 결정됩니다. 
'''
 
screen.listen() # 프로그램 활성화
screen.mainloop() # 프로그램이 계속 동작하는 상태를 유지하겠다!

거북이 객체를 생성하고(3), 거북이의 색상과 모양, 속도를 지정해주었습니다(4~6). 그런 다음 거북이가 그림을 그릴 수 있는 스크린을 생성하였습니다(7). 그리고 마지막에는 프로그램이 동작 상태를 유지할 수 있는 설정들을 해주면서 마무리했습니다(14~15). 자세한 내용은 주석을 참고하시면 되겠습니다. 

코드의 중간 쯤을 보시면 여러 줄 짜리 주석이 있는 것을 확인하실 수 있는데(9~12), 이 부분에 도형을 그리는 코드를 작성할 것입니다. 

 

여기서 그려 볼 도형은 정삼각형, 정사각형, 정육각형, 그리고 별입니다. 아래 소개되는 코드들을 직접 작성해보시고 실행 결과를 보시면서, 동작 순서를 잘 파악해보시기 바라겠습니다(설정 관련 코드는 매번 같으므로, 주석 부분에 작성될 코드만 소개합니다).

 

 

정삼각형

1
2
3
for i in range(3) :
    player.forward(100)
    player.left(120)

forward() 함수는 거북이가 이동할 거리를 인자로 받아 그만큼을 이동시켜주는 함수입니다. 여기서는 100px만큼 이동했습니다. 거북이가 처음 실행됐을 때 거북이의 방향은 왼쪽을 바라보고 있으므로, 삼각형을 그리기 위해서는 왼쪽으로 120도 꺾도록 left() 함수에 120을 전달해줍니다. for문을 통해 해당 동작을 3회 반복하면 결과적으로 삼각형이 그려지게 됩니다.

이후 도형들도 그려지는 원리는 거의 다 비슷하므로, 이제부터는 자세한 설명은 생략하고 코드와 결과만 보도록 하겠습니다.

 

 

정사각형

1
2
3
for i in range(4) :
    player.forward(100)
    player.left(90)

 

 

 

정육각형

1
2
3
for i in range(6) :
    player.forward(100)
    player.left(60)

 

 

별 그리기 

1
2
3
4
5
for i in range(5) :
    player.forward(100)
    player.right(144)
    player.forward(100)
    player.left(72)

 

댓글
공지사항