generated from mwc/lab_iteration
tile with squared in the corners and a diamond in the middle
It took me quite some time to get the tile set to print as expected. It kept drawing the tiles in random positions. I had to determine where I wanted to end the curser so it could appropriatly start the next tile.
This commit is contained in:
parent
5129783b38
commit
3ee046e9a5
|
@ -1,7 +1,7 @@
|
|||
from turtle import *
|
||||
|
||||
def square(side_length):
|
||||
for i in range(4):
|
||||
for side in range(4):
|
||||
forward(side_length)
|
||||
right(90)
|
||||
|
||||
|
|
61
tile.py
61
tile.py
|
@ -3,25 +3,58 @@ from turtle import *
|
|||
def draw_tile(size):
|
||||
"Draws one tile, which can be repeated to form a pattern."
|
||||
draw_tile_outline(size)
|
||||
draw_squiggle(size)
|
||||
draw_design(size)
|
||||
|
||||
def draw_tile_outline(size):
|
||||
pencolor("#dddddd")
|
||||
square(size)
|
||||
|
||||
def draw_squiggle(size):
|
||||
forward(size/4)
|
||||
pencolor("black")
|
||||
left(90)
|
||||
quarter_arc_right(size/4)
|
||||
quarter_arc_left(size/4)
|
||||
quarter_arc_left(size/4)
|
||||
quarter_arc_right(size/4)
|
||||
left(90)
|
||||
fly(size/4)
|
||||
left(90)
|
||||
fly(size)
|
||||
left(90)
|
||||
def draw_design(size):
|
||||
|
||||
pencolor("blue")
|
||||
|
||||
"draw a corner square 1/4 the size of the tile"
|
||||
for i in range(4):
|
||||
forward (size/4)
|
||||
left (90)
|
||||
forward (size/4)
|
||||
left (90)
|
||||
forward (size/4)
|
||||
left (90)
|
||||
forward (size/4)
|
||||
left (90)
|
||||
forward (size)
|
||||
left (90)
|
||||
|
||||
"move to the top of the diamond"
|
||||
left (90)
|
||||
forward (size*3.5/4)
|
||||
penup()
|
||||
right(90)
|
||||
forward (size/2)
|
||||
right(45)
|
||||
pendown()
|
||||
"draw red diamond"
|
||||
pencolor("red")
|
||||
forward (size/2)
|
||||
right(90)
|
||||
forward (size/2)
|
||||
right(90)
|
||||
forward (size/2)
|
||||
right(90)
|
||||
forward (size/2)
|
||||
penup()
|
||||
"reset pen"
|
||||
left(45)
|
||||
forward (size/2)
|
||||
right (180)
|
||||
forward(size+size/4+size/8)
|
||||
right(90)
|
||||
forward (size/2)
|
||||
right (180)
|
||||
pendown()
|
||||
|
||||
|
||||
|
||||
def fly(distance):
|
||||
"Moves without drawing."
|
||||
|
|
Loading…
Reference in New Issue