如何在曲面上绘制圆弧

suy*_*yog 5 python pygame pygame-surface

我想在曲面内画一个半圆。所以我想使用, pygame.draw.arc() 但我不知道如何在表面内绘制圆弧,我已经看到了官方文档,并且正在使用math.radians()将度数转换为弧度,但我看不到圆弧。正在画一个圆...

import pygame
import math

pygame.init()
width, height = 800, 600
screen = pygame.display.set_mode((width, height))

surf = pygame.Surface((100, 100))
surf.fill("green")
rect = surf.get_rect(center=(100, 100))

run = 1
while run:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = 0

    screen.fill((255, 202, 135))
    pygame.draw.circle(surf, (255, 255, 255), (30,30),25)
    pygame.draw.arc(surf, (255, 255, 255), rect, math.radians(270), math.radians(90))
    screen.blit(surf, rect)

    pygame.display.flip()
pygame.quit()

Run Code Online (Sandbox Code Playgroud)

提前致谢

Rab*_*d76 3

当然,圆弧段的位置必须相对于Surface绘制圆弧段的位置,而不是相对于Surface屏幕上放置的绝对位置:

pygame.draw.arc(surf, (255, 255, 255), rect, math.radians(270), math.radians(90))

pygame.draw.arc(surf, (255, 255, 255), (0, 0, 100, 100), math.radians(270), math.radians(90))
Run Code Online (Sandbox Code Playgroud)