1
A
回答
1
PyGame
沒有函數來創建填充arc/pie
但您可以使用PIL/pillow
與pieslice
生成位圖並轉換爲PyGame
圖像以顯示它。
import pygame
#import pygame.gfxdraw
from PIL import Image, ImageDraw
# --- constants ---
BLACK = ( 0, 0, 0)
WHITE = (255, 255, 255)
BLUE = ( 0, 0, 255)
GREEN = ( 0, 255, 0)
RED = (255, 0, 0)
GREY = (128, 128, 128)
#PI = 3.1415
# --- main ----
pygame.init()
screen = pygame.display.set_mode((800,600))
# - generate PIL image with transparent background -
pil_size = 300
pil_image = Image.new("RGBA", (pil_size, pil_size))
pil_draw = ImageDraw.Draw(pil_image)
#pil_draw.arc((0, 0, pil_size-1, pil_size-1), 0, 270, fill=RED)
pil_draw.pieslice((0, 0, pil_size-1, pil_size-1), 330, 0, fill=GREY)
# - convert into PyGame image -
mode = pil_image.mode
size = pil_image.size
data = pil_image.tobytes()
image = pygame.image.fromstring(data, size, mode)
image_rect = image.get_rect(center=screen.get_rect().center)
# - mainloop -
clock = pygame.time.Clock()
running = True
while running:
clock.tick(10)
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_ESCAPE:
running = False
screen.fill(WHITE)
#pygame.draw.arc(screen, BLACK, (300, 200, 200, 200), 0, PI/2, 1)
#pygame.gfxdraw.pie(screen, 400, 300, 100, 0, 90, RED)
#pygame.gfxdraw.arc(screen, 400, 300, 100, 90, 180, GREEN)
screen.blit(image, image_rect) # <- display image
pygame.display.flip()
# - end -
pygame.quit()
結果:
相關問題
- 1. 如何在PyGame中繪製圓形?
- 2. 在WPF/C中繪製一個半圓/半圓#
- 3. 用橢圓繪製圓形pygame
- 4. 以半圓形繪製點
- 5. 如何繪製半圓
- 6. 如何繪製Python中的半橢圓?
- 7. 半圓形進度條Android - 繪製半圓
- 8. 繪製一個半圓形按鈕iOS
- 9. SVG繪製動畫的半圓不虛
- 10. three.js - 繪製一半的擠壓圓圈
- 11. 爲繪製UIImageView設置圓角半徑
- 12. 圓角半徑可繪製形狀
- 13. PIXI.js - 如何繪製一半的圓?
- 14. Androidplot繪製圓,給點和半徑
- 15. 使用邊框半徑繪製圓圈
- 16. 繪製一個填充的半圓
- 17. 在pygame中繪製圓圈時的白點
- 18. 在Pygame中使用Tkinter繪製一個圓圈
- 19. 如何在excel VBA中在窗口邊緣繪製半圓
- 20. 在openlayers.js中,有沒有辦法在繪製該圓時顯示圓的半徑?
- 21. 如何在Raphael JS中繪製半個橢圓?
- 22. 在地圖視圖中繪製一定半徑的圓圈android
- 23. 如何僅在Python龜中繪製半圓
- 24. 如何在半圓圖案中繪製點
- 25. 在CSS中繪製半圈
- 26. 在D3中繪製半徑
- 27. 在R中繪製橢圓
- 28. 在Tkinter(Python)中繪製圓
- 29. 在C++中繪製圓圈
- 30. 在android中繪製圓圈
@ TigerhawkT3我編輯的問題 「來解釋它是如何不同」。你能打開它嗎? –
怎麼樣一個好的多邊形? http://stackoverflow.com/questions/23246185/python-draw-pie-shapes-with-colour-filled – dodell