Menu
CoddyTech

Daireler, Çizgiler, Çokgenler

Coddy'nin Pygame Journey'sinin Oyun Döngüsü bölümünün bir parçası. Ders 9 / 32.

Şimdiye kadar dikdörtgenler çizdiniz. pygame.draw daha fazla şekil içerir ve hepsi aynı şekilde başlar: çizim yapılacak yüzey, ardından renk.

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)])

Daire için merkez ve yarıçap gerekir. Dikdörtgenin aksine, sol üst köşesinden değil, orta noktasından konumlandırılır. 30 yarıçaplı bir dairenin çapı 60 pikseldir.

Çizgi için iki uç noktası ve son olarak piksel cinsinden genişliği gerekir. Genişlik belirtilmezse 1 piksel kalınlığında olur.

Çokgen için köşe noktalarının listesi gerekir ve aralarındaki şekli doldurur; son noktayı ilk noktaya bağlar. Üç nokta üçgen, dört nokta eşkenar dörtgen oluşturur.

challenge icon

Görev

Kolay

Dolgu işleminden sonra denizde bir yelkenli çizin:

  1. Güneş: yarıçapı 40 olan, merkezi (380, 80) noktasında bulunan sarı bir (255, 196, 0) daire.
  2. Deniz: (0, 280) noktasından (480, 280) noktasına uzanan, kalınlığı 4 piksel olan mavi bir (80, 160, 255) çizgi.
  3. Yelken: köşeleri (240, 120), (240, 250) ve (160, 250) olan kırmızı bir (235, 80, 80) çokgen.

Kendin dene

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))
    # güneşi, denizi ve yelkeni buraya çiz
    pygame.display.flip()
    clock.tick(60)

pygame.quit()

Oyun Döngüsü bölümündeki tüm dersler

Kendi başına pratik yap: Pygame playground