示例#1
0
    for row in range(9):
        for column in range(9):
            color = WHITE
            pygame.draw.rect(screen, color,
                             [(MARGIN + WIDTH) * column + MARGIN,
                              (MARGIN + HEIGHT) * row + MARGIN, WIDTH, HEIGHT])

    # Set barrier cells
    impassea = [(2, 2), (3, 3), (4, 4), (5, 3), (6, 2), (3, 2), (4, 2), (5, 2),
                (2, 2)]
    for point in impassea:
        grid[point[0]][point[1]] = 1

    # Get path based on barriers and A*
    agrid = Grid.AStarGraph(impassea)
    result = Grid.AStarSearch((0, 0), (7, 3), agrid)
    # Set the path we found
    for point in result:
        grid[point[0]][point[1]] = 2

    # Draw the grid
    for row in range(9):
        for column in range(9):
            color = WHITE
            if grid[row][column] == 1:
                color = RED
            elif grid[row][column] == 2:
                color = GREEN
            pygame.draw.rect(screen, color,
                             [(MARGIN + WIDTH) * column + MARGIN,
                              (MARGIN + HEIGHT) * row + MARGIN, WIDTH, HEIGHT])