from turtle import *
from superturtle import *
from superturtle.movement import *

from turtle import *

def draw_circle(radius, x, y, color=None):
    "Draw a circle with the given radius at the (x, y) position. Optionally fill with color."
    penup()
    goto(x, y - radius)  # Move to the correct start point
    pendown()
    
    if color:
        fillcolor(color)  # Set the fill color
        begin_fill()  # Start filling the circle with color
    
    circle(radius)  # Draw the circle
    
    if color:
        end_fill()  # End the filling

def draw_spider(radius):

    # Step 1: Draw the big circle (spider body) on top of the small circle
     draw_circle(radius, 30, 60, color="grey")  

    # Step 2: Draw the small circle (spider head)
     draw_circle(20, 30, 0, color="black")  

    # Step 3: Draw legs on big circle
     draw_legs(radius, 30, 60)

def draw_legs(radius, x, y):
    "Draws legs starting from the perimeter of the big circle (spider's body)"
    leg_length = 50  # Length of the legs
    pensize(4)
    
    # Draw legs at equal angles from the top of the big circle
    angles = [-60, -30, 0, 30, 150, 180, 210, 240]  # Angles for legs (top-left, top-right, and bottom)
    
    for angle in angles:
        penup()
        goto(x, y)  # Go to the center of the big circle
        setheading(angle)  # Set the heading to the desired angle
        forward(radius)  # Move forward to the perimeter of the big circle
        pendown()
        forward(leg_length)  # Draw the leg
        penup()
        backward(leg_length)  # Move back to the perimeter of the big circle

def draw_connection_line(y):
    "Draw a line from the top of the big circle (head) to the center of the small circle (body)"
    penup()
    goto(30, 400)  
    pendown()
    goto(30, y)  # Draw a line to the center of the small circle (spider's body)
    penup()
    goto(0, 0)

# Draw the spider
# draw_spider()
# draw_connection_line()
# hideturtle()
# done()
    