الحدود والزوايا
جزء من قسم حلقة اللعبة في رحلة Pygame على Coddy. الدرس 10 من 32.
كل الأشكال حتى الآن كانت مملوءة. حدّد عرضًا للشكل، وسترسم pygame حافته فقط، بسماكة تساوي ذلك العدد من البكسلات:
pygame.draw.rect(screen, (240, 240, 240), (100, 100, 120, 60), 2)
pygame.draw.circle(screen, (240, 240, 240), (300, 130), 30, 2)العرض 0، أو عدم تحديد عرض إطلاقًا، يملأ الشكل. وينطبق ذلك بالطريقة نفسها على المستطيلات والدوائر والمضلعات.
يمكن أيضًا أن تكون زوايا المستطيلات مستديرة. border_radius هو نصف قطر انحناء كل زاوية، بالبكسلات. مرّره باسمه، بعد الوسيطات الأخرى:
pygame.draw.rect(screen, (80, 160, 255), (100, 200, 120, 60), border_radius=10)غالبًا ما تستخدم الأزرار واللوحات وأشرطة الصحة الأمرين معًا: صندوقًا مستدير الزوايا ومملوءًا، يحيط به إطار رفيع.
التحدي
سهلحوّل الصندوق إلى زر:
- أضف إلى الصندوق الأزرق
border_radius=12. - بعده، ارسم إطارًا أبيض
(240, 240, 240)عند(130, 130, 220, 80)بعرض3بكسلات، معborder_radius=16.
جرّب بنفسك
import pygame
pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Button")
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))
pygame.draw.rect(screen, (80, 160, 255), (140, 140, 200, 60))
pygame.display.flip()
clock.tick(60)
pygame.quit()
جميع دروس حلقة اللعبة
تدرّب بنفسك: Playground لـ Pygame