Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 패스트캠퍼스
- JavaScript
- python
- 디지털기초역량훈련
- 파이썬터틀
- 7장오류처리
- 코딩 #개발자 #노마드북클럽 #노개북
- 중첩된객체
- 자바스크립트
- es6
- 디스트럭처링
- css
- 일본워홀서류
- python turtle
- 노개북
- 웹개발자를위한자바스크립트의모든것
- 클린코드
- 일러스트레이터강의
- 국비지원
- 3장함수
- 5장형식맞추기
- 플렉스박스
- 9장단위테스트
- 파이썬
- 내일배움카드
- flexbox
- 일본워킹홀리데이이유서
- 일본워킹홀리데이계획서
- 바이트디그리
- 독후감
Archives
- Today
- Total
KARIU의 IT 블로그
[Python turtle] 03. 터틀로 도형 그리기 본문
반응형
터틀에 내장되어 있는 함수를 이용하여 위와 같이 다향한 도형을 그릴 수 있습니다.
위의 도형들 처럼 그리기 위해선 circle()이라는 함수가 필요합니다. circle()은 원을 그릴 때 쓰는 함수인데 삼각형이나 사각형을 그릴 때도 사용할 수 있습니다.
먼저 위의 사진에서 맨 왼쪽에 있는 원을 그려보겠습니다. 반지름은 50으로 지정하였습니다.
1
2
3
4
5
6
7
8
9
10
|
import turtle
turtle.setup(width=1000, height=300) #터틀 창의 크기를 가로 1000, 세로 300으로 지정
t=turtle.Turtle() #터틀 불러오기
t.penup() #커서의 이동경로가 표시 안되게
t.goto(-400,0) #해당좌표로 커서 이동
t.color("red") #색깔 지정
t.pendown() #커서의 이동경로가 표시 되게
t.circle(50) #반지름 50짜리 원 그리기
|
cs |
그냥 circle함수 안에 반지름 크기만 적어주면 알아서 그려줍니다.
그럼 다각형들은 어떻게 그리냐?
다각형들 또한 circle함수만 이용해 그릴 수 있습니다. 삼각형을 그려보겠습니다.
1
2
3
4
5
6
7
8
9
10
|
import turtle
turtle.setup(width=1000, height=300) #터틀 창의 크기를 가로 1000, 세로 300으로 지정
t=turtle.Turtle() #터틀 불러오기
t.penup() #커서의 이동경로가 표시 안되게
t.goto(-400,0) #해당좌표로 커서 이동
t.color("red") #색깔 지정
t.pendown() #커서의 이동경로가 표시 되게
t.circle(50,steps=3) #반지름 50짜리 원을 깍아서 삼각형 그리기
|
cs |
원을 그릴 때와 무슨 차이가 있는지 알아차리셨나요?
모든 코드는 다 같지만 10번째 줄만 다릅니다. 바로 circle함수 안에 steps=3이라는 내용이 추가 되었습니다. steps의 숫자에 따라 원을 깍아서 도형을 그립니다.
steps가 3이면 삼각형, 4면 사각형, 5면 오각형... 이런 식으로 그림을 그려줍니다.
그러면 응용을 하여 여러가지 다각형을 circle함수만을 이용해 그릴 수 있습니다. 점점 steps의 숫자가 증가할수록 도형은 원에 가까워지게 됩니다.
맨 위의 사진과 같은 결과가 나오게 코드를 짜보겠습니다. 알아보기 쉽게 도형 아래에 이름도 적어줬습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
import turtle
turtle.setup(width=1000, height=300) #터틀 창의 크기를 가로 1000, 세로 300으로 지정
t=turtle.Turtle() #터틀 불러오기
t.penup() #커서의 이동경로가 표시 안되게
t.goto(-400,0) #해당좌표로 커서 이동
t.color("red") #색깔 지정
t.pendown() #커서의 이동경로가 표시 되게
t.circle(50) #반지름 50짜리 원 그리기
t.penup()
t.goto(-400,-50)
t.write("원",font=(15))
t.pendown()
t.penup()
t.goto(-300,0)
t.color("orange")
t.pendown()
t.circle(50,steps=3)
t.penup()
t.goto(-300,-50)
t.write("삼각형",font=(15))
t.pendown()
t.penup()
t.goto(-200,0)
t.color("green")
t.pendown()
t.circle(50,steps=4)
t.penup()
t.goto(-200,-50)
t.write("사각형",font=(15))
t.pendown()
t.penup()
t.goto(-100,0)
t.color("green")
t.pendown()
t.circle(50,steps=5)
t.penup()
t.goto(-100,-50)
t.write("오각형",font=(15))
t.pendown()
t.penup()
t.goto(0,0)
t.color("blue")
t.pendown()
t.circle(50,steps=6)
t.penup()
t.goto(0,-50)
t.write("육각형",font=(15))
t.pendown()
t.penup()
t.goto(100,0)
t.color("purple")
t.pendown()
t.circle(50,steps=7)
t.penup()
t.goto(100,-50)
t.write("칠각형",font=(15))
t.pendown()
t.penup()
t.goto(200,0)
t.color("red")
t.pendown()
t.circle(50,steps=8)
t.penup()
t.goto(200,-50)
t.write("팔각형",font=(15))
t.pendown()
t.penup()
t.goto(300,0)
t.color("orange")
t.pendown()
t.circle(50,steps=9)
t.penup()
t.goto(300,-50)
t.write("구각형",font=(15))
t.pendown()
t.penup()
t.goto(400,0)
t.color("green")
t.pendown()
t.circle(50,steps=10)
t.penup()
t.goto(400,-50)
t.write("십각형",font=(15))
t.pendown()
|
cs |
하나하나 다 적어주어 코드가 좀 길어졌습니다.(노가다) 이러한 형식으로 맨 위의 사진과 같은 결과를 얻을 수 있습니다.
코드는 github에도 올려놓겠습니다.
코드 다운로드
반응형
'프로그래밍 언어 > Python turtle' 카테고리의 다른 글
[Python turtle] 04. 파이썬 터틀로 거북이 모양 스탬프 찍기 (0) | 2020.12.30 |
---|---|
[Python turtle] 02. 파이썬 터틀명령어 정리 (0) | 2020.12.29 |
[Python turtle] 01. 파이썬 터틀이란? & 터틀 사용법 (1) | 2020.12.29 |
Comments