Okręgi, linie i wielokąty
Część sekcji Pętla gry ścieżki Pygame w Coddy. Lekcja 9 z 32.
Do tej pory rysowałeś prostokąty. pygame.draw udostępnia więcej kształtów, a wszystkie zaczynają się tak samo: najpierw powierzchnia, na której rysujesz, a potem kolor.
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)])Okrąg wymaga podania środka i promienia. W przeciwieństwie do prostokąta jest umieszczany według środka, a nie lewego górnego rogu. Promień równy 30 daje okrąg o średnicy 60 pikseli.
Linia wymaga podania dwóch punktów końcowych, a na końcu jej szerokości w pikselach. Bez podania szerokości ma grubość 1 piksela.
Wielokąt wymaga podania listy punktów narożnych i wypełnia kształt między nimi, łącząc ostatni punkt z pierwszym. Trzy punkty tworzą trójkąt, a cztery — romb.
Wyzwanie
ŁatwyNarysuj żaglówkę na morzu, po wypełnieniu:
- Słońce: żółte koło
(255, 196, 0)wyśrodkowane w punkcie(380, 80), o promieniu40. - Morze: niebieska linia
(80, 160, 255)od punktu(0, 280)do punktu(480, 280), o grubości4pikseli. - Żagiel: czerwony wielokąt
(235, 80, 80)o wierzchołkach(240, 120),(240, 250)i(160, 250).
Spróbuj swoich sił
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))
# narysuj tutaj słońce, morze i żagiel
pygame.display.flip()
clock.tick(60)
pygame.quit()
Wszystkie lekcje w sekcji Pętla gry
2Kształty i kolory
Okręgi, linie i wielokątyKontury i narożnikiScena z kształtówZmieniające się koloryPoćwicz samodzielnie: Edytor online Pygame