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.
Görev
KolayDolgu işleminden sonra denizde bir yelkenli çizin:
- Güneş: yarıçapı
40olan, merkezi(380, 80)noktasında bulunan sarı bir(255, 196, 0)daire. - Deniz:
(0, 280)noktasından(480, 280)noktasına uzanan, kalınlığı4piksel olan mavi bir(80, 160, 255)çizgi. - 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
1Bir Kareyi Hareket Ettir
Bir Pencere AçArka Planı Doldur2Şekiller ve Renkler
Daireler, Çizgiler, ÇokgenlerKonturlar ve KöşelerŞekillerden Oluşan Bir SahneDeğişen RenklerKendi başına pratik yap: Pygame playground