Как визуализировать массив в виде строк в Pygame? - PullRequest
1 голос
/ 03 мая 2019

Я пытаюсь визуализировать массив, используя линии в Pygame, но он рисует случайные линии на поверхности.Вот код:

import pygame
import random
pygame.init()
array = [100, 256, 132, 151, 493]

white = (255, 255, 255)
black = (0, 0, 0)

gameDisplay = pygame.display.set_mode((800,600))
gameDisplay.fill(black)
pygame.display.set_caption("test")

x1 = 0
y1 = 600
x2 = x1

for number in array:
        pygame.draw.line(gameDisplay, white, (x1, y1), (x2, number), 2)
        x1 += 100

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            quit()
    for number in array:
        pygame.draw.line(gameDisplay, white, (x1, y1), (x2, number), 2)
        x1 += 100
    pygame.display.update()

Я попытался поместить цикл for вне цикла while, и это то же самое, но не рисовать бесконечно линии.

1 Ответ

0 голосов
/ 03 мая 2019

Если вы хотите нарисовать вертикальные линии, тогда координата x начала и конца лжи должна быть равна).
Если линии нарисованы в основном цикле, то начальные координаты будут постепенно увеличиваться(например, x) должны быть инициализированы внутри цикла.

например,

y1 = 600
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            quit()

    x = 0
    for number in array:
        pygame.draw.line(gameDisplay, white, (x, y1), (x, number), 2)
        x += 100
    pygame.display.update()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...