728x90
반응형
파이썬 실습창을 열 수 있습니다.실습창 열기
1. 원 그리기
원 그리기 구문입니다.
circle(radius, extent=None, steps=None)
radius – a number 반지름 - 숫자
extent – a number (or None) 범위 - 숫자(또는 None)
steps – an integer (or None) 증가값 - 숫자(또는 None)
- 현재의 거북이 위치에서 그리기 시작합니다.
- 범위 (각도)는 원을 그리는 각도입니다. 범위가 주어지지 않으면 전체 원을 그립니다. 반지름이 양수 이면 시계 반대 방향으로 호를 그리며 , 그렇지 않으면 시계 방향으로 호를 그립니다.
- 증가값은 원 한 바퀴를 나눈 값입니다. 삼각형은 증가값이 3이 됩니다. 정다각형을 그리는데 사용할 수 있습니다.
다음 코드를 실행하여 보세요.
from turtle import*
shape('turtle')
circle(100)
done()
반지름 100인 원을 그립니다.
● 시작 위치를 바꿀 수 있습니다.
새로운 그림을 그릴 때는 열린 창(도화지)를 닫음 다음에 실핼하세요.
에러가 발생되면 한번 더 실행하고, 두번 실행해도 에러면 프로그램을 수정하세요.
from turtle import*
shape('turtle')
up(); goto(80, -100); down()
circle(100)
done()
- 거북이는 선을 그으면서 움직입니다.
- 선을 긋지 않고 이동하려면 거북이를 위로 띄우고(up), 이동(goto)한 다음에, 내려오게(down)하면 됩니다.
- 좌표는 수학의 좌표와 같습니다. 처음 거북이의 위치가 원점(0,0)입니다.
- 3번 줄의 ;(semicolon)은 같은 줄에 여러 문장을 쓸 때 사용합니다. 줄을 바꾸어 쓰도 됩니다.
2. 다각형 그리기
2-1. circle로 다각형 그리기
다음 코드는 정5각형을 그립니다.
위의 코드에 필요한 부분을 추가하세요.
from turtle import*
shape('turtle')
up(); goto(80, -100); down()
circle(100,None,5)
done()
- 4번 줄의 5를 다른 숫자로 바꾸면 다른 다각형을 그릴 수 있습니다.
2-2. circle로 연속하여 다각형 그리기
다음 코드를 실행하여 보세요.
위의 코드를 수정하면 됩니다.
from turtle import*
shape('turtle')
up(); goto(80, -100); down()
for n in range(3,10):
circle(100,None,n)
clear()
done()
- 4번 줄 끝에 :(colon)이 있습니다. 5번과 6번 줄은 들여쓰기 하여야 합니다.
- range(3,10)은 3부터 9(10 앞까지) 의 수열 즉 3,4,5,6,7,8,9입니다.
- for는 range의 값들을 순서대로 하나씩 n에 바인딩하고 밑에 있는 들여쓰기한 부분을 실행, 이과정을 반복합니다.
- clear()은 화면을 지웁니다.
- 정리하면, 처음 n이 3이 되어, 5번 줄에서 3각형을 그리고 6번 줄에서 지웁니다. 다시 n이 4가 되어 4각형 그리고 지우고, 이 과정을 n이 9가 될때까지 반복합니다.
2-3. 색 채우기
그려진 도형에 색을 채울 수 있습니다.
다음 코드를 실해하여 보세요.
위의 코드에 필요한 부분을 추가하면 됩니다.
from turtle import*
shape('turtle')
color('green')
up(); goto(80, -100); down()
for n in range(3,10):
begin_fill() # 색 채우기 시작(밑줄<underscore>주의)
circle(100,None,n)
end_fill() # 색 채우기 끝
delay(1000) # 1초 기다림
clear() # 화면 지우기
delay(0) # 다시 빠르게(생략하면 실행마다 1초 기다림)
done()
3. 다각형 놀이
위의 프로그램을 고쳐서 재미있는 다각형 놀이를 하여 봅시다.
from turtle import*
from random import* # 난수 만들기 준비
shape('turtle')
for n in range(30): # 30개의 다각형
r=randint(0,255) # 빛의 3원색 red, green, blue
g=randint(0,255)
b=randint(0,255)
fillcolor((r,g,b)) # 면색깔을 r,g,b 난수 대로
x=randint(-150,150) # 가로 위치 -150에서 150사이
y=randint(-150,150) # 세로 위치 -150에서 150사이
d=randint(5,30) # 반지름 5에서 30사이
a=randint(3,8) # 도형은 3각형에서 8각형 사이
up(); goto(x,y); down() # 난수 위치로 가서
begin_fill()
circle(d,None,a) # d 난수 반지름으로, a 난수 다각형
end_fill()
ht() # 마지막에는 거북이 숨긴다(hide turtle)
done()
- randint(a, b)는 a이상 b이하의 정수 난수를 반환합니다.
- 모든 색은 빛의 3원색인 red(빨강), green(녹색), blue(.파랑)으로 이루어져 있습니다.
- 각 색깔의 정도는 0이상 255의 숫자로 구분합니다.
- 텀퓨터에서는 r, g, b의 색깔 정도의 조합으로 모든 색을 표현할 수 있습니다.
즐겁게 응용하시기 바랍니다.
수고하셨습니다.
오늘 끝.
728x90
반응형
'거북이 그림' 카테고리의 다른 글
[거북이그림] 일곱번째 <사인 곡선> (1) | 2024.04.28 |
---|---|
[거북이그림] 여섯번째 <나선 그리기> (1) | 2024.04.27 |
[거북이그림] 다섯번째 <해바라기> (0) | 2024.04.23 |
[거북이그림] 네번째 <에펠 탑> (0) | 2024.04.10 |
[거북이그림] 첫번째 <거북아 놀자> (0) | 2024.03.28 |