Menu
CoddyTech

الحدود والزوايا

جزء من قسم حلقة اللعبة في رحلة 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)

غالبًا ما تستخدم الأزرار واللوحات وأشرطة الصحة الأمرين معًا: صندوقًا مستدير الزوايا ومملوءًا، يحيط به إطار رفيع.

challenge icon

التحدي

سهل

حوّل الصندوق إلى زر:

  1. أضف إلى الصندوق الأزرق border_radius=12.
  2. بعده، ارسم إطارًا أبيض (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