Python畫五星紅旗

  • 2019 年 10 月 7 日
  • 筆記

畫五星紅旗的思路:首先,應分為三個模塊展開設計,第一個模塊是設計旗面,對於國旗的旗面可以按照黃金分割比進行設計,第二個模塊是設計大五角星,第三個模塊是設計四個小五角星。分別定義三個函數draw_rentangle,draw_big_star,draw_small_star來實現。三者之間的合適位置可以通過下圖比例作參考,再根據效果圖進行修正。

效果展示

Turtle庫是Python語言中一個很流行的繪製圖像的函數庫,想像一個小烏龜,在一個橫軸為x、縱軸為y的坐標系原點,(0,0)位置開始,它根據一組函數指令的控制,在這個平面坐標系中移動,從而在它爬行的路徑上繪製了圖形。以下是turtle的一些方法

1、繪圖窗口設置命令

turtle.setup(400,300,200,100):參數以此(寬,高,距離屏幕左邊距離,距離屏幕上方距離),屏幕左上角原點,單位像素。

2、運動命令

turtle.goto(x,y):直接跳轉到(x,y)點,以繪圖窗口中心為原點,向右為x軸,向上為y軸。

turtle.fd(d)、turtle.forward(d):以當前方向,往前行進d像素。

turtle.bk(d)、turtle.backword(d):保持當前方向不變,往後退行d像素。

turtle.circle(r,angle):從當前位置以r為半徑圓的angle角度旋轉。

3、方向設置命令

turtle.seth(angle):以x軸方向為起點將方向偏轉為angle度,逆時針為正。只改變行進方向但不行進。

turtle.left(angle):在當前行進方向的基礎上,向左旋轉angle度。

turtle.right(angle):在當前行進方向的基礎上,向右旋轉angle度。

4、畫筆控制命令

turtle.penup():台筆

turtle.pendown():落筆

turtle.pensize(width):畫筆粗細

turtle.pencolor(顏色名red/RGB三元組/顏色編碼):畫筆顏色

turtle.fillcolor(colorstring):繪製圖形的填充顏色

turtle.begin_fill():開始填充

turtle.end_fill():結束填充

turtle.filling():返回當前是否在填充狀態