農曆新年到了,於是筆者幾天前用Python做了個文字小動畫,程式碼在此。
做完後,心想也來發一篇和PyGame有關的2D繪圖吧。
基本繪圖
在PyGame要如何繪製直線、矩形、圓形、多邊形等常見的圖形呢?這些基本功能當然要先查API囉,所以來看一下PyGame Drawing API:http://www.pygame.org/docs/ref/draw.html 有提供那些功能。(底下文字取自 http://www.pygame.org/docs/ref/draw.html)
pygame.draw
pygame module for drawing shapes
pygame.draw.rect | — | draw a rectangle shape |
pygame.draw.polygon | — | draw a shape with any number of sides |
pygame.draw.circle | — | draw a circle around a point |
pygame.draw.ellipse | — | draw a round shape inside a rectangle |
pygame.draw.arc | — | draw a partial section of an ellipse |
pygame.draw.line | — | draw a straight line segment |
pygame.draw.lines | — | draw multiple contiguous line segments |
pygame.draw.aaline | — | draw fine antialiased lines |
pygame.draw.aalines | — | draw a connected sequence of antialiased lines |
在電腦繪圖中,有一點需要注意的:「電腦座標系統」。和我們習慣的座標系統是不一樣的(見下圖,圖取自[2])
了解以上函式庫的使用方式以及電腦座標系統的觀念後,就可以開始著手設計要畫的圖案了。例如下圖(資料出處:[1])
更多的範例可參考 Program Arcade Games With Python And Pygame Chapter 5: Introduction to Graphics。
參考資料:
[1] http://www.pygame.org/docs/ref/draw.html
[2] Program Arcade Games With Python And Pygame Chapter 5: Introduction to Graphics
沒有留言:
張貼留言