generated from mwc/lab_turtle
137 lines
1.9 KiB
Python
137 lines
1.9 KiB
Python
# drawing.py
|
|
# Sun with sunglasses
|
|
# By Cory Chung
|
|
#
|
|
# This is a drawing of a sun with sunglasses.
|
|
|
|
|
|
from turtle import *
|
|
|
|
# ORIGINAL
|
|
|
|
# forward(100)
|
|
# right(360 * 2 / 5)
|
|
# forward(100)
|
|
# right(360 * 2 / 5)
|
|
# forward(100)
|
|
# right(360 * 2 / 5)
|
|
# forward(100)
|
|
# right(360 * 2 / 5)
|
|
# forward(100)
|
|
# right(360 * 2 / 5)
|
|
|
|
# ASSIGNMENT
|
|
|
|
# set initial position higher, but keep original orientation
|
|
penup()
|
|
left(90)
|
|
forward(200)
|
|
left(90)
|
|
forward(50)
|
|
right(180)
|
|
pendown()
|
|
|
|
# begin by drawing a dodecagon
|
|
for i in range(11):
|
|
forward(100)
|
|
right(30)
|
|
forward(100)
|
|
left(30) # restore original orientation
|
|
|
|
# create equilateral triangles on the edges
|
|
for i in range(11):
|
|
forward(100)
|
|
right(120)
|
|
forward(100)
|
|
left(90)
|
|
forward(100)
|
|
right(120)
|
|
forward(100) # don't go left because we don't need to draw any more triangles
|
|
|
|
# move into a position to draw left half of sunglasses
|
|
|
|
penup()
|
|
right(120)
|
|
forward(100)
|
|
left(30)
|
|
forward(50)
|
|
|
|
# draw left half of sunglasses
|
|
|
|
pendown()
|
|
left(60)
|
|
forward(50)
|
|
left(60)
|
|
for i in range(5):
|
|
forward(100)
|
|
right(90)
|
|
forward(50)
|
|
left(90)
|
|
forward(67)
|
|
|
|
# get into position to draw right half of sunglasses
|
|
|
|
right(180)
|
|
forward(67)
|
|
right(90)
|
|
forward(50)
|
|
left(90)
|
|
forward(100)
|
|
right(60)
|
|
forward(50)
|
|
right(60)
|
|
forward(50)
|
|
right(30)
|
|
for i in range(3):
|
|
forward(100)
|
|
right(30)
|
|
forward(50)
|
|
|
|
# draw right half of sunglasses
|
|
|
|
right(60)
|
|
forward(50)
|
|
right(60)
|
|
for i in range(5):
|
|
forward(100)
|
|
left(90)
|
|
forward(50)
|
|
right(90)
|
|
forward(67)
|
|
|
|
# position to make a smile
|
|
|
|
right(180)
|
|
forward(67)
|
|
left(90)
|
|
forward(50)
|
|
right(90)
|
|
forward(100)
|
|
left(60)
|
|
forward(50)
|
|
left(60)
|
|
forward(50)
|
|
left(30)
|
|
forward(100)
|
|
left(30)
|
|
forward(50)
|
|
left(90)
|
|
penup() # we don't want to have the pen down while we reposition the turtle
|
|
forward(300)
|
|
|
|
# draw smile
|
|
|
|
pendown()
|
|
left(90)
|
|
forward(50)
|
|
left(30)
|
|
forward(50)
|
|
right(180)
|
|
forward(50)
|
|
right(30)
|
|
forward(100)
|
|
right(30)
|
|
forward(50)
|
|
|
|
input()
|