Как создать сетку с помощью Pygame - PullRequest
0 голосов
/ 06 марта 2020

Я создал поверхность, но я не уверен, как сделать сетку, потому что я пытался использовать функцию прямоугольника, но не полностью понимаю параметр.

import pygame

pygame.init()

Background = pygame.display.set_mode((900,900))


pygame.draw.rect(Background,green,_____)


Я не понимаю, как я Я предполагаю использовать это для создания сетки, потому что даже если я смогу заставить код работать, я не знаю, как позиционировать элемент, и должен быть более эффективный способ создания сетки, чем ручное создание и позиционирование каждого блока.

1 Ответ

1 голос
/ 06 марта 2020

Есть лучший способ - вы должны использовать циклы для создания сеток. Третий аргумент для pygame.draw.rect - это прямоугольник, означающий четыре значения, которые упакованы вместе (скажем, в кортеж): начало x, начало y, ширина и высота - но линии обычно более полезны для сеток. Это нарисует простую сетку с пробелами в 50 пикселей, а затем оставит дисплей активным с помощью al oop:

import pygame

pygame.init()

Background = pygame.display.set_mode((900 ,900))

for i in range(0, 900, 50):
    pygame.draw.line(Background, (255, 255, 255), (0, i), (900, i))
    pygame.draw.line(Background, (255, 255, 255), (i, 0), (i, 900))
pygame.display.update()

while pygame.event.wait().type != pygame.QUIT:
    pass

Реально единственной слегка сложной частью здесь являются линии. Первые аргументы такие же, как и для прямоугольников. Последние два аргумента являются начальной точкой для линии и конечной точкой, и при желании вы можете добавить ширину, чего я не сделал - в этом случае получить ширину по умолчанию 1 пиксель.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...