Files
lab_iteration/tile_grid.py
kdang 530761ff03 I wrote an explanation for a function using a docstring.
I will write docstrings if I write my own programs in the future so other people, or myself,
can understand what the function does if they look at the code in the future.
2025-09-24 09:37:54 -04:00

46 lines
1.3 KiB
Python

# tile_grid.py
# ------------
# By MWC Contributors
#
# Implements `draw_tile_grid`, which draws a grid of tiles.
from turtle import *
from tile import fly
def draw_tile_grid(width, height, tile_size, tile_function):
"""Draws a (width x height) grid, with tile_function drawn on each tile.
After the user inputs the width, draw tiles to the right x times
After the user inputs the height, draw tiles vertically y times
After the user inputs the tile size, side length of tiles is tile_size
Tile_function makes the turtle draw a specified pattern
"""
for y in range(height):
for x in range(width):
tile_function(tile_size)
fly(tile_size)
return_to_x_origin(tile_size, width)
move_up_one_row(tile_size)
return_to_y_origin(tile_size, height)
def return_to_x_origin(tile_size, width):
"After drawing a row of tiles, returns the turtle to the starting x position"
fly(-1 * tile_size * width)
def return_to_y_origin(tile_size, height):
"After drawing all rows of tiles, returns the turtle to the starting y position"
right(90)
fly(tile_size * height)
left(90)
def move_up_one_row(tile_size):
"Moves the turtle up one row"
left(90)
fly(tile_size)
right(90)