日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

詳解用Python練習畫個美隊盾牌

系統 1788 0

詳解用Python練習畫個美隊盾牌_第1張圖片

0 環境

Python版本:3.6.6

操作系統:Mac OS Mojave 10.14.2

1 引言

最近我媳婦每天晚上吃飯時候也拿手機看,上廁所也在看。

看著看著還會笑?WTF?你在干嘛呢?

沒錯,她在看美隊……

這男人比我帥?……

比我有錢?……

還是比我有腔調?……

答案很明顯,我相信你們的眼睛都是雪亮的。

那問題來了,作為一個男人,怎么能忍?雖然是個明星,雖然是假的,雖然已經挽回不了敗局了……那我就送個美隊的盾牌給你吧……

這篇文章不是Turtle的入門篇,所以關于基本的畫筆使用小胖不在這篇里贅述了。有興趣的可以留言,我會根據你們的反饋來寫一篇或者一個系列。

2 實戰

先來看一個效果圖:

詳解用Python練習畫個美隊盾牌_第2張圖片

用過Turtle的都知道,畫筆是需要抬手和落筆的。這一點一定要理解,因為計算機是很死板的,你的每一個動作都必須告訴他,包括GC。

所以你的畫筆一旦落下,經過的每一處都會留下字跡。如果希望隔開一段距離就需要經過「抬筆」->「移動畫筆」->「落筆」。

所以我們先把這個動作封裝成一個函數:

            
def setpen(x, y):
  # 抬筆
  t.penup()
  # 移動畫筆到(x, y)
  t.goto(x, y)
  # 落筆
  t.pendown()
  t.setheading(0)
          

?接下來就來畫盾牌。盾牌的話,注意觀察美隊盾牌,顏色是「紅」->「白」->「紅」->「藍」。

這里有一個技巧,就是后面填充的圓圈背景色是可以覆蓋之前畫的圓圈的背景色。

            
def circle(x, y, r, color):
  # 為了保證畫出的圓夠圓,所以我們把圓的邊設置的多一些
  n = 36
  angle = 360 / n
  pi = 3.1415926
  # 周長
  c = 2 * pi * r
  # 每條邊的長度
  l = c / n
  # 起始位置
  start_x = x - l / 2
  start_y = y + r
  # 移動畫筆
  setpen(start_x, start_y)
  # 選擇畫筆顏色
  t.pencolor(color)
  # 選擇背景色
  t.fillcolor(color)
  # 填充
  t.begin_fill()
  for i in range(n):
    t.forward(l)
    t.right(angle)
  t.end_fill()
          

接下來就是畫里面那個白色的五角星了,這里就不注釋了,因為和畫圈的過程差不多。

            
def five_star(l):
  setpen(0, 0)
  t.setheading(162)
  t.forward(150)
  t.setheading(0)
  t.fillcolor('WhiteSmoke')
  t.begin_fill()
  t.hideturtle()
  t.penup()
  for i in range(5):
    t.forward(l)
    t.right(144)
  t.end_fill()
          

主函數:

            
def sheild():
  circle(0, 0, 300, 'red')
  circle(0, 0, 250, 'white')
  circle(0, 0, 200, 'red')
  circle(0, 0, 150, 'blue')
  five_star(284)

if __name__ == '__main__':
  sheild()
  # 結束烏龜圖
  turtle.done()
          

以上所述是小編給大家介紹的用Python練習畫個美隊盾牌詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 惠东县| 昌黎县| 新平| 资中县| 桐柏县| 康乐县| 宁安市| 新密市| 莒南县| 化州市| 垦利县| 通山县| 延津县| 南召县| 银川市| 奇台县| 盐边县| 濉溪县| 秦安县| 南漳县| 新和县| 孝感市| 汕尾市| 泰来县| 汝阳县| 荣成市| 渝北区| 吐鲁番市| 淳安县| 清苑县| 西华县| 南川市| 马山县| 修水县| 垦利县| 开化县| 辽宁省| 乌拉特后旗| 天祝| 方城县| 垣曲县|