Menu
CoddyTech

Círculos, Linhas e Polígonos

Parte da seção O loop do jogo do Journey de Pygame da Coddy. Lição 9 de 32.

Até agora, você desenhou retângulos. pygame.draw tem mais formas, e todas começam da mesma maneira: a superfície onde desenhar e, em seguida, a cor.

pygame.draw.circle(screen, (255, 196, 0), (100, 80), 30)
pygame.draw.line(screen, (240, 240, 240), (0, 200), (480, 200), 3)
pygame.draw.polygon(screen, (60, 200, 120), [(240, 40), (280, 120), (200, 120)])

Um círculo recebe o centro e o raio. Ao contrário de um retângulo, ele é posicionado pelo meio, não pelo canto superior esquerdo. Um raio de 30 resulta em um círculo com 60 pixels de diâmetro.

Uma linha recebe os dois pontos finais e, por último, a largura em pixels. Sem especificar a largura, ela tem 1 pixel de espessura.

Um polígono recebe uma lista de pontos dos vértices e preenche a forma entre eles, ligando o último ponto ao primeiro. Três pontos formam um triângulo; quatro, um losango.

challenge icon

Desafio

Fácil

Desenhe um veleiro no mar, após o preenchimento:

  1. O sol: um círculo amarelo (255, 196, 0) centralizado em (380, 80) com raio 40.
  2. O mar: uma linha azul (80, 160, 255) de (0, 280) até (480, 280), com 4 pixels de espessura.
  3. A vela: um polígono vermelho (235, 80, 80) com vértices em (240, 120), (240, 250) e (160, 250).

Experimente você mesmo

import pygame

pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Sailboat")
clock = pygame.time.Clock()

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    screen.fill((30, 30, 46))
    # desenhe o sol, o mar e a vela aqui
    pygame.display.flip()
    clock.tick(60)

pygame.quit()

Todas as lições de O loop do jogo

Pratique por conta própria: Playground de Pygame