본문 바로가기
프로그램

[파이썬] 터틀(turtle) 임의의 다각형,색,좌표로 그리기

by 오디세이99 2023. 5. 10.
728x90
반응형

import turtle
import random

turtle.setup(600, 600)
colors = ['red','yellow','blue','green','skyblue','white','orange']

def draw_shape(t, c, length, sides, x, y):
    turtle.speed(t)               # 속도
    turtle.penup()                # 그리지 않으면서 좌표 이동하기 위해 펜을 듬
    turtle.goto(x, y)             # 좌표로 이동
    turtle.pendown()              # 이제부터 그리기 위해 펜을 내임
    turtle.pencolor('black')      # 펜색 지정
    turtle.fillcolor(c)           # 채우기 색 지정
    turtle.begin_fill()           # 채우기 시작
    for i in range(sides):       # 3각형 그리기 위해 3번 반복
        turtle.forward(length)    # 한 선 그리기
        turtle.left(360//sides)   # 360을 3(삼각형)으로 나누면 회전할 각도 계산됨
    turtle.end_fill()             # 채우기 끝내기

for i in range(10):
    t = random.randint(1, 10)     # 그리기 속도
    c = colors[random.randint(0,len(colors)-1)]    # 색. 색 리스트의 인덱스를 난수로 선택해 이 인덱스로 색 문자 사용
    length = random.randint(20, 100)      # 한 변의 크기
    x = random.randint(-250, 250)         # x 좌표. -+
    y = random.randint(-250, 250)         # y 좌표
    sides = random.randint(3, 6)          # 다각형 종류
    draw_shape(t, c, length, sides, x, y)        
        
turtle.done()

728x90
반응형

댓글