天天看點

《Python語言程式設計》——3.7 繪制各種圖形

本節書摘來自華章計算機《python語言程式設計》一書中的第3章,第3.7節,作者:[美]梁勇(y. daniel liang) 更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。

關鍵點:python的turtle子產品裡包含移動筆、設定筆的大小、舉起和放下筆的方法。

第1章介紹如何使用turtle繪畫。一個turtle實際上是一個對象,在導入turtle子產品時,就建立了對象。然後,可以調用turtle對象的各種方法完成不同的操作。本節将介紹turtle對象更多的方法。

當建立一個turtle對象時,它的位置被設定在(0,0)處——視窗的中心,而且它的方向被設定為向右。turtle子產品用筆來繪制圖形。預設情況下,筆是向下的(就像真實的筆尖觸碰着一張紙)。如果筆是向下的,那麼當移動turtle的時候,它就會繪制出一條從目前位置到新位置的線。表3-5羅列出控制筆的繪制狀态的方法,表3-6羅列出移動turtle的方法。

《Python語言程式設計》——3.7 繪制各種圖形

https://yqfile.alicdn.com/2b1ff923d2f7b34924d97e50273138a7b2e60552.png

" >

《Python語言程式設計》——3.7 繪制各種圖形

https://yqfile.alicdn.com/ceb245041c619355256e7c4e5c5f1dda5313a52d.png" >

《Python語言程式設計》——3.7 繪制各種圖形

所有的方法都是簡單明了的。學習它們的最好方式是寫一段測試代碼看看每個方法是如何工作的。

circle方法有三個參數:radius是必需的,extent和step是可有可無的。extent是一個角度,它決定繪制圓的哪一部分。step決定使用的階數。如果step是3、4、5、6、…,那麼circle方法将繪制一個裡面包含被圓包覆的三邊、四邊、五邊、六邊或更多邊形(即正三角形、正方形、五邊形、六邊形等)。如果不指定階數,那麼circle方法就隻畫一個圓。

程式清單3-5顯示了一個繪制三角形、正方形、五邊形、六邊形以及圓的代碼,如圖3-3所示:

《Python語言程式設計》——3.7 繪制各種圖形

程式清單3-5 simpleshapes.py

《Python語言程式設計》——3.7 繪制各種圖形
《Python語言程式設計》——3.7 繪制各種圖形

https://yqfile.alicdn.com/0491118d13eb92ac07b10f7b12889d18d19ecf04.png

第1行導入turtle子產品。第3行設定筆的粗細為3個像素點。第4行将筆向上拉,這樣就可以在第5行将位置改變到(-200,-50)。第6行将筆拉下,第7行繪制一個三角形。在第7行,turtle對象調用參數radius為40和階數為3 的circle方法繪制出一個三角形。類似地,程式的其他部分繪制一個正方形(第12行),一個五邊形(第17行),一個六邊形(第22行),一個圓(第27行)。

檢查點

3.25 如何将turtle的位置設定在(0,0)?

3.26 如何繪制一個直徑為3的紅點?

3.27 下面的方法将繪制出什麼圖形?

《Python語言程式設計》——3.7 繪制各種圖形

https://yqfile.alicdn.com/2a669fd7e7b12709534ebdb3c80fbbaca9ac64f8.png

3.28 如何使turtle快速移動?

3.29 如何取消turtle的最後一次操作?