我能够想出一个多边形,但我需要用像下图这样的影线填充它,只使用海龟和函数。下面是创建多边形的代码。我不确定如何创建一个函数来用平行影线填充我的多边形。
import turtle
def get_polygon_vertices(num_vertices):
vertices = []
for i in range(num_vertices):
x = int(input(f"Enter x coordinate of vertex {i+1}: "))
y = int(input(f"Enter y coordinate of vertex {i+1}: "))
vertices.append((x, y))
return vertices
def draw_polygon(vertices):
turtle.up()
turtle.goto(vertices[0])
turtle.down()
for vertex in vertices:
turtle.goto(vertex)
turtle.goto(vertices[0])
def hatch(spacing, angle=45, color='black', linewidth=10):
t = turtle.Turtle()
t.speed(0)
t.color(color)
t.pensize(linewidth)
for x in range(-400, 400, int(spacing)):
t.penup()
t.goto(x, 400)
t.pendown()
t.setheading(angle)
t.forward(800)
Get number of vertices from user input
n = int(input("Enter number of polygon vertices: "))
# Get polygon vertices from user input
polygon_vertices = get_polygon_vertices(n)
# Main
draw_polygon(polygon_vertices)
hatch(25,)
turtle.done()