더북(TheBook)

1자주 사용하는 거북이 그래픽 명령어

 

Day 6의 표 6-2에 이어 자주 사용하는 거북이 그래픽 명령어(함수)를 표 13-1에 정리했습니다. 모두 기억할 필요는 없지만, 어떤 함수가 있는지, 각 함수가 어떤 기능을 하는지 알고 있으면 앞으로 예제를 실습할 때 도움이 될 것입니다.

 

함수

설명

사용 예

pos( ) /

position( )

거북이의 현재 위치(좌표)를 구합니다(x, y 둘 다).

t.pos()

xcor( ), ycor( )

거북이의 x 좌표나 y 좌표를 구합니다(x, y 중 하나만).

a = t.ycor()

# 거북이의 y 좌표를 구해 a에 저장합니다.

goto(x, y),

setpos(x, y)

거북이를 특정 위치(좌표)로 보냅니다(x, y 둘 다).

t.goto(100,50)

setx(x), sety(y)

거북이의 x 좌표나 y 좌표를 지정한 위치로 이동합니다(x, y 중 하나만).

t.sety(50)

# 거북이의 y 좌표를 50만큼 이동합니다. x 좌표는 그대로 둡니다.

distance(x, y)

현재 거북이가 있는 위치에서 특정 위치까지의 거리를 구합니다.

d = t.distance(100,100)

# 현재 위치에서 (100, 100)까지의 거리를 구해서 d에 저장합니다.

heading( )

거북이가 현재 바라보는 각도를 구합니다.

ang = t.heading()

towards(x, y)

현재 거북이가 있는 위치에서 특정 위치까지 바라보는 각도를 구합니다.

ang = t.towards(10,10)

# 현재 위치에서 (10, 10)까지 가는 데 필요한 각도를 구해 ang에 저장합니다.

setheading(각도)/ seth(각도)

거북이가 바라보는 방향을 바꿉니다.

t.setheading(90) # 거북이가 화면 위쪽을 바라봅니다.

※ 거북이가 오른쪽을 바라볼 때의 각도가 0이며, 시계 반대 방향으로 돌면서 각도가 커집니다.

home( )

거북이의 위치와 방향을 처음 상태로 돌립니다.

t.home() # 거북이가 화면 가운데인 (0, 0)에서 오른쪽(0도)을 바라봅니다.

onkeypress(함수, “키 이름”)

키보드를 눌렀을 때 실행할 함수를 정합니다.

def f():

    t.forward(10)

t.onkeypress(f, "Up")

# 위쪽 방향키 를 누르면 f 함수를 호출합니다(f 함수는 거북이를 10만큼 앞으로 이동시킵니다).

onscreenclick(함수)

마우스 버튼을 눌렀을 때 실행할 함수를 정합니다.

t.onscreenclick(t.goto)

# 마우스 버튼을 누르면 앞에서 정의한 goto 함수를 호출합니다(goto 함수는 거북이를 마우스 버튼을 누른 위치로 이동시킵니다).

ontimer(함수, 시간)

일정한 시간이 지난 뒤 실행할 함수를 정합니다.

def f():

    t.forward(10)

t.ontimer(f, 1000)

# 1000밀리초(1초) 후에 f 함수를 호출합니다(f 함수는 거북이를 10만큼 앞으로 이동시킵니다.)

listen( )

사용자 입력이 잘 처리되도록 거북이 그래픽 창에 포커스를 줍니다.

t.listen()

title(“창 이름”)

거북이 그래픽 창의 이름을 지정합니다.

t.title("welcome")

# 거북이 그래픽 창의 이름이 Untitle에서 welcome으로 바뀝니다.

write(“문자열”)

현재 거북이 위치에 문자를 출력합니다.

t.write("Hello")

# 현재 거북이 위치에 Hello를 출력합니다.

t.write("Hello", False, "center", ("", 20))

# 현재 거북이 위치에 가운데 정렬로 크기가 20인 Hello를 출력합니다(이 문장 전체를 구문처럼 통째로 기억하는 정도로만 알고 넘어가도 괜찮습니다).

표 13-1 자주 사용하는 거북이 그래픽 명령어 2

 

TIP

거북이 그래픽 창에 포커스를 준다는 말은 사용자의 키보드 입력이 현재 실행 중인 다른 창으로 가지 않고 ‘거북이 그래픽 창’에서 처리되도록 한다는 뜻입니다. 프로그램을 실행할 때 항상 화면에 거북이 그래픽 창만 열려 있는 건 아니기 때문입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.