generated from mwc/project_drawing
	For my final submission, I decided to make a code that has the coder input a time and when you run it, the clock displays that time. For a future project, I want to try and make a clock with hands that move.
This commit is contained in:
		
							
								
								
									
										42
									
								
								drawing.py
									
									
									
									
									
								
							
							
						
						
									
										42
									
								
								drawing.py
									
									
									
									
									
								
							@@ -1,17 +1,26 @@
 | 
			
		||||
# drawing.py
 | 
			
		||||
# ----------
 | 
			
		||||
# By ____(you)___________
 | 
			
		||||
# By Diana Panarello
 | 
			
		||||
#
 | 
			
		||||
# (Briefly describe what this program does.)
 | 
			
		||||
# This program will be a clock that moves.
 | 
			
		||||
 | 
			
		||||
import turtle
 | 
			
		||||
def draw_clock():
 | 
			
		||||
RADIUS = 200
 | 
			
		||||
def draw_hand(t, length, heading, color, width):
 | 
			
		||||
    t.penup()
 | 
			
		||||
    t.goto(0, 0)
 | 
			
		||||
    t.color(color)
 | 
			
		||||
    t.pensize(width)
 | 
			
		||||
    t.setheading(heading)
 | 
			
		||||
    t.pendown()
 | 
			
		||||
    t.forward(length)
 | 
			
		||||
def draw_clock(hour, minutes):
 | 
			
		||||
    screen = turtle.Screen()
 | 
			
		||||
    screen.setup(width=600, height=600)
 | 
			
		||||
    screen.bgcolor("lightgray")
 | 
			
		||||
    t = turtle.Turtle()
 | 
			
		||||
    t.penup()
 | 
			
		||||
    t.speed(0)
 | 
			
		||||
    t.speed(-10)
 | 
			
		||||
    t.pensize(14)
 | 
			
		||||
    t.color("black")
 | 
			
		||||
    t.goto(0, -200)
 | 
			
		||||
@@ -24,11 +33,26 @@ def draw_clock():
 | 
			
		||||
    t.goto(5, -30)
 | 
			
		||||
    t.pensize(20) 
 | 
			
		||||
    t.color("black")
 | 
			
		||||
    for hour in range(1, 13):
 | 
			
		||||
        angle = 30 * (3 - hour)
 | 
			
		||||
    for h in range(1, 13):
 | 
			
		||||
        angle = 30 * (3 - h)
 | 
			
		||||
        t.speed(-5)
 | 
			
		||||
        t.setheading(angle)
 | 
			
		||||
        t.forward(NUMBER_RADIUS)
 | 
			
		||||
        t.write(str(hour), align = "center", font = ("Arial", 50, "bold"))
 | 
			
		||||
        t.backward(NUMBER_RADIUS)
 | 
			
		||||
draw_clock() 
 | 
			
		||||
        t.write(str(h), align = "center", font = ("Arial", 50, "bold"))
 | 
			
		||||
        t.backward(NUMBER_RADIUS) 
 | 
			
		||||
    t_hand = turtle.Turtle()
 | 
			
		||||
    t_hand.speed(-5)
 | 
			
		||||
    t_hand.hideturtle()
 | 
			
		||||
    minute_angle_clockwise = minutes * 6
 | 
			
		||||
    minute_heading = 90 - minute_angle_clockwise
 | 
			
		||||
    hour_angle_clockwise = (hour % 12 + minutes / 60) * 30
 | 
			
		||||
    hour_heading = 90 - hour_angle_clockwise
 | 
			
		||||
    HOUR_LENGTH = RADIUS * 0.5
 | 
			
		||||
    draw_hand(t_hand, HOUR_LENGTH, hour_heading, "black", 8)
 | 
			
		||||
    MINUTE_LENGTH = RADIUS * 0.75
 | 
			
		||||
    draw_hand(t_hand, MINUTE_LENGTH, minute_heading, "black", 8)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
draw_clock(3, 00)
 | 
			
		||||
 | 
			
		||||
turtle.done()
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user