主頁 > 知識庫 > Python實戰(zhàn)之畫哆啦A夢(超詳細(xì)步驟)

Python實戰(zhàn)之畫哆啦A夢(超詳細(xì)步驟)

熱門標(biāo)簽:企業(yè)做大做強(qiáng) 客戶服務(wù) Win7旗艦版 呼叫中心市場需求 電話運營中心 百度AI接口 語音系統(tǒng) 硅谷的囚徒呼叫中心

一、寫在前面

本文基于64位windows系統(tǒng)(鼠標(biāo)右鍵點擊桌面“此電腦”圖標(biāo)——屬性可查看電腦系統(tǒng)版本)、python3.x(pycharm自動安裝的版本, 3.0以上)。文中代碼內(nèi)容所使用的工具是pycharm-community-2020.1,實踐中如有碰到問題,可留言提問。

前陣子有看到zh上有大神畫了這個哆啦A夢的大頭貼,自己也來試了一下,很簡單,但長篇整段的代碼對剛剛學(xué)會海龜繪圖語法的初學(xué)者來說還是有一定難度,所以來做一個拆解版詳細(xì)步驟講解實現(xiàn)。

二、效果圖

言歸正傳,先上效果圖。

三、詳細(xì)步驟拆分講解

第一步:貓臉?biāo){色外圈

調(diào)整畫筆粗細(xì)到8

隱藏畫筆

畫一個半徑為120的圓

填充成藍(lán)色(顏色值由取色吸管吸色測量得出)

import turtle as t
t.pensize(8)
t.hideturtle()
# 貓臉外圈藍(lán)色
t.fillcolor('#00A1E8')
t.begin_fill()
t.circle(120)
t.end_fill()

第二步:貓臉白色內(nèi)圈

調(diào)整畫筆粗細(xì)到3

畫一個半徑為100的圓

填充成白色(顏色值由取色吸管吸色測量得出)

# 貓臉內(nèi)圈白色
t.pensize(3)
t.fillcolor('white')
t.begin_fill()
t.circle(100)
t.end_fill()

第三步:鼻子

抬起畫筆

移動至坐標(biāo)(0,134)準(zhǔn)備畫鼻子

調(diào)整畫筆粗細(xì)到4

落下畫筆

畫一個半徑為18的圓

填充成紅色(顏色值由取色吸管吸色測量得出)

# 鼻子
t.penup()
t.home()
t.goto(0, 134)
t.pendown()
t.pensize(4)
t.fillcolor("#EA0014")
t.begin_fill()
t.circle(18)
t.end_fill()

第四步:鼻尖白色圓點

抬起畫筆

移動至坐標(biāo)(7,155)準(zhǔn)備畫鼻尖的白色圓點

調(diào)整畫筆粗細(xì)到2

落下畫筆

畫一個半徑為4的圓

畫筆白色,填充白色(顏色值由取色吸管吸色測量得出)

# 鼻尖
t.penup()
t.goto(7, 155)
t.pensize(2)
t.color('white', 'white')
t.pendown()
t.begin_fill()
t.circle(4)
t.end_fill()

第五步:左眼

抬起畫筆

移動至坐標(biāo)(-30,160)準(zhǔn)備畫左眼

調(diào)整畫筆粗細(xì)到4

落下畫筆

畫筆黑色,填充白色(顏色值由取色吸管吸色測量得出)

定義繪制步長變量a,設(shè)置初始值為0.4

循環(huán)控制總角度120:

        當(dāng)角度等于0-30度或角度等于60-90度時:

                每循環(huán)一次步長a增加0.08

                每循環(huán)一次畫筆左轉(zhuǎn)3度

                每循環(huán)一次向前繪制步長變量a

        否則:

                每循環(huán)一次步長a減少0.08

                每循環(huán)一次畫筆左轉(zhuǎn)3度

                每循環(huán)一次向前繪制步長變量a

# 左眼
t.penup()
t.goto(-30, 160)
t.pensize(4)
t.pendown()
t.color('black', 'white')
t.begin_fill()
a = 0.4
for i in range(120):
    if 0 = i  30 or 60 = i  90:
        a = a + 0.08
        t.left(3)  # 向左轉(zhuǎn)3度
        t.forward(a)  # 向前走a的步長
    else:
        a = a - 0.08
        t.left(3)
        t.forward(a)
t.end_fill()

第六步:右眼

抬起畫筆

移動至坐標(biāo)(30,160)準(zhǔn)備畫右眼

調(diào)整畫筆粗細(xì)到4

落下畫筆

畫筆黑色,填充白色(顏色值由取色吸管吸色測量得出)

循環(huán)控制總角度120:

        當(dāng)角度等于0-30度或角度等于60-90度時:

                每循環(huán)一次步長a增加0.08

                每循環(huán)一次畫筆左轉(zhuǎn)3度

                每循環(huán)一次向前繪制步長變量a

        否則:

                每循環(huán)一次步長a減少0.08

                每循環(huán)一次畫筆左轉(zhuǎn)3度

                每循環(huán)一次向前繪制步長變量a

# 右眼
t.penup()
t.goto(30, 160)
t.pensize(4)
t.pendown()
t.color('black', 'white')
t.begin_fill()
for i in range(120):
    if 0 = i  30 or 60 = i  90:
        a = a + 0.08
        t.left(3)  # 向左轉(zhuǎn)3度
        t.forward(a)  # 向前走a的步長
    else:
        a = a - 0.08
        t.left(3)
        t.forward(a)
t.end_fill()

第七步:左眼內(nèi)部

抬起畫筆

移動至坐標(biāo)(-38,190)準(zhǔn)備畫左眼內(nèi)部

調(diào)整畫筆粗細(xì)到8

落下畫筆

右轉(zhuǎn)-30度,繪制步長15的線條

右轉(zhuǎn)70度,繪制步長15的線條

# 左眼內(nèi)部
t.penup()
t.goto(-38, 190)
t.pensize(8)
t.pendown()
t.right(-30)
t.forward(15)
t.right(70)
t.forward(15)

第八步:右眼內(nèi)部

抬起畫筆

移動至坐標(biāo)(15,185)準(zhǔn)備畫右眼內(nèi)部黑色眼球

調(diào)整畫筆粗細(xì)到4

落下畫筆

畫筆黑色,填充黑色(顏色值由取色吸管吸色測量得出)

畫一個半徑為13的圓

# 右眼內(nèi)部
t.penup()
t.goto(15, 185)
t.pensize(4)
t.pendown()
t.color('black', 'black')
t.begin_fill()
t.circle(13)
t.end_fill()

第九步:右眼內(nèi)部白色圓點

抬起畫筆

移動至坐標(biāo)(13,190)準(zhǔn)備畫右眼黑色眼球內(nèi)部的白色圓點

調(diào)整畫筆粗細(xì)到2

落下畫筆

畫筆白色,填充白色(顏色值由取色吸管吸色測量得出)

畫一個半徑為5的圓

# 右眼內(nèi)部白色圓點
t.penup()
t.goto(13, 190)
t.pensize(2)
t.pendown()
t.color('white', 'white')
t.begin_fill()
t.circle(5)
t.end_fill()

第十步:鼻子下面黑色豎線

抬起畫筆

移動至坐標(biāo)(0,134)并恢復(fù)初始狀態(tài),準(zhǔn)備畫鼻子下面的黑色豎線

調(diào)整畫筆粗細(xì)到4

落下畫筆

畫筆黑色(顏色值由取色吸管吸色測量得出)

右轉(zhuǎn)90度

繪制步長40的線條

# 鼻子下面的黑色豎線
t.penup()
t.home()
t.goto(0, 134)
t.pensize(4)
t.pencolor('black')
t.pendown()
t.right(90)
t.forward(40)

第十一步:右邊胡子

抬起畫筆

移動至坐標(biāo)(0,124)并恢復(fù)初始狀態(tài),準(zhǔn)備畫右邊從上往下數(shù)的第1根胡子

調(diào)整畫筆粗細(xì)到3

落下畫筆

畫筆黑色(顏色值由取色吸管吸色測量得出)

左轉(zhuǎn)10度

繪制步長80的線條

————————————————————————————————

抬起畫筆

移動至坐標(biāo)(0,114)并恢復(fù)初始狀態(tài),準(zhǔn)備畫右邊從上往下數(shù)的第2根胡子

調(diào)整畫筆粗細(xì)到3

落下畫筆

畫筆黑色(顏色值由取色吸管吸色測量得出)

左轉(zhuǎn)6度

繪制步長80的線條

————————————————————————————————

抬起畫筆

移動至坐標(biāo)(0,104)并恢復(fù)初始狀態(tài),準(zhǔn)備畫右邊從上往下數(shù)的第3根胡子

調(diào)整畫筆粗細(xì)到3

落下畫筆

畫筆黑色(顏色值由取色吸管吸色測量得出)

左轉(zhuǎn)0度

繪制步長80的線條

# 右邊的胡子(第1根)
t.penup()
t.home()
t.goto(0, 124)
t.pensize(3)
t.pencolor('black')
t.pendown()
t.left(10)
t.forward(80)
# 右邊的胡子(第2根)
t.penup()
t.home()
t.goto(0, 114)
t.pensize(3)
t.pencolor('black')
t.pendown()
t.left(6)
t.forward(80)
# 右邊的胡子(第3根)
t.penup()
t.home()
t.goto(0, 104)
t.pensize(3)
t.pencolor('black')
t.pendown()
t.left(0)
t.forward(80)

第十二步:左邊胡子

抬起畫筆

移動至坐標(biāo)(0,124)并恢復(fù)初始狀態(tài),準(zhǔn)備畫左邊從上往下數(shù)的第1根胡子

調(diào)整畫筆粗細(xì)到3

落下畫筆

畫筆黑色(顏色值由取色吸管吸色測量得出)

左轉(zhuǎn)170度

繪制步長80的線條

————————————————————————————————

抬起畫筆

移動至坐標(biāo)(0,114)并恢復(fù)初始狀態(tài),準(zhǔn)備畫左邊從上往下數(shù)的第2根胡子

調(diào)整畫筆粗細(xì)到3

落下畫筆

畫筆黑色(顏色值由取色吸管吸色測量得出)

左轉(zhuǎn)174度

繪制步長80的線條

————————————————————————————————

抬起畫筆

移動至坐標(biāo)(0,104)并恢復(fù)初始狀態(tài),準(zhǔn)備畫左邊從上往下數(shù)的第3根胡子

調(diào)整畫筆粗細(xì)到3

落下畫筆

畫筆黑色(顏色值由取色吸管吸色測量得出)

左轉(zhuǎn)180度

繪制步長80的線條

# 左邊的胡子(第1根)
t.penup()
t.home()
t.goto(0, 124)
t.pensize(3)
t.pencolor('black')
t.pendown()
t.left(170)
t.forward(80)
# 左邊的胡子(第2根)
t.penup()
t.home()
t.goto(0, 114)
t.pensize(3)
t.pencolor('black')
t.pendown()
t.left(174)
t.forward(80)
# 左邊的胡子(第3根)
t.penup()
t.home()
t.goto(0, 104)
t.pensize(3)
t.pencolor('black')
t.pendown()
t.left(180)
t.forward(80)

 

第十三步:嘴巴

抬起畫筆

移動至坐標(biāo)(-70,70),準(zhǔn)備畫下邊沿圓弧

調(diào)整畫筆粗細(xì)到6

落下畫筆

畫筆黑色,填充紅色(顏色值由取色吸管吸色測量得出)

恢復(fù)畫筆初始方向并右轉(zhuǎn)60度

繪制半徑80,角度40的圓弧

繪制半徑80,角度80的圓弧

————————————————————————————————

抬起畫筆

恢復(fù)初始

移動至坐標(biāo)(-80,70),準(zhǔn)備畫上邊沿橫線

落下畫筆

繪制步長160的線條

# 嘴巴(下邊沿圓弧和顏色填充)
t.penup()
t.goto(-70, 70)
t.pendown()
t.color('black', 'red')
t.pensize(6)
t.setheading(-60)
t.begin_fill()
t.circle(80, 40)
t.circle(80, 80)
t.end_fill()
# 嘴巴(上邊沿的橫線)
t.penup()
t.home()
t.goto(-80, 70)
t.pendown()
t.forward(160)

第十四步:舌頭

抬起畫筆

恢復(fù)初始

移動至坐標(biāo)(-50,50),準(zhǔn)備畫舌頭

調(diào)整畫筆粗細(xì)到1

落下畫筆

畫筆黑色,填充土黃色(顏色值由取色吸管吸色測量得出)

恢復(fù)畫筆初始方向并左轉(zhuǎn)40度

繪制半徑-40,角度40的圓弧

繪制半徑-40,角度40的圓弧

恢復(fù)畫筆初始方向并左轉(zhuǎn)40度

繪制半徑-40,角度40的圓弧

繪制半徑-40,角度40的圓弧

恢復(fù)畫筆初始方向并左轉(zhuǎn)220度

繪制半徑-80,角度40的圓弧

繪制半徑-80,角度40的圓弧

# 舌頭
t.penup()
t.home()
t.goto(-50, 50)
t.pendown()
t.pensize(1)
t.fillcolor("#eb6e1a")
t.setheading(40)
t.begin_fill()
t.circle(-40, 40)
t.circle(-40, 40)
t.setheading(40)
t.circle(-40, 40)
t.circle(-40, 40)
t.setheading(220)
t.circle(-80, 40)
t.circle(-80, 40)
t.end_fill()

第十五步:領(lǐng)帶/紅色圍巾

抬起畫筆

移動至坐標(biāo)(-70,12),準(zhǔn)備畫紅色圍巾

調(diào)整畫筆粗細(xì)到14

落下畫筆

畫筆紅色(顏色值由取色吸管吸色測量得出)

恢復(fù)畫筆初始方向并右轉(zhuǎn)20度

繪制半徑200,角度30的圓弧

繪制半徑200,角度10的圓弧

# 領(lǐng)帶
t.penup()
t.goto(-70, 12)
t.pensize(14)
t.pencolor('red')
t.pendown()
t.setheading(-20)
t.circle(200, 30)
t.circle(200, 10)

第十六步:鈴鐺

抬起畫筆

移動至坐標(biāo)(0,-46),準(zhǔn)備畫鈴鐺

調(diào)整畫筆粗細(xì)到3

落下畫筆

畫筆黑色,填充黃色(顏色值由取色吸管吸色測量得出)

繪制一個半徑25的圓

————————————————————————————————

抬起畫筆

移動至坐標(biāo)(-5,-40),準(zhǔn)備畫鈴鐺細(xì)節(jié)部分

調(diào)整畫筆粗細(xì)到2

畫筆黑色,填充黃綠色(顏色值由取色吸管吸色測量得出)

繪制一個半徑5的圓

調(diào)整畫筆粗細(xì)到3

右轉(zhuǎn)115度

繪制步長7的線條

# 鈴鐺
t.penup()
t.goto(0, -46)
t.pendown()
t.pensize(3)
t.color("black", '#f8d102')
t.begin_fill()
t.circle(25)
t.end_fill()
# 鈴鐺細(xì)節(jié)
t.penup()
t.goto(-5, -40)
t.pendown()
t.pensize(2)
t.color("black", '#79675d')
t.begin_fill()
t.circle(5)
t.end_fill()
t.pensize(3)
t.right(115)
t.forward(7)

四、收尾

繪制結(jié)束后停留在繪制頁面

t.done()

到此這篇關(guān)于Python實戰(zhàn)之畫哆啦A夢(超詳細(xì)步驟)的文章就介紹到這了,更多相關(guān)Python畫哆啦A夢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 使用Python對Syslog信息進(jìn)行分析并繪圖的實現(xiàn)
  • 用Python的繪圖庫(matplotlib)繪制小波能量譜
  • python matplotlib繪圖實現(xiàn)刪除重復(fù)冗余圖例的操作
  • python 繪圖模塊matplotlib的使用簡介
  • python之 matplotlib和pandas繪圖教程
  • python繪圖模塊之利用turtle畫圖
  • python繪圖pyecharts+pandas的使用詳解
  • Python下使用Trackbar實現(xiàn)繪圖板
  • Python數(shù)據(jù)可視化常用4大繪圖庫原理詳解
  • Python三維繪圖之Matplotlib庫的使用方法
  • Python Matplotlib繪圖基礎(chǔ)知識代碼解析
  • Python繪圖之二維圖與三維圖詳解
  • Python繪圖之柱形圖繪制詳解
  • Python實現(xiàn)手繪圖效果實例分享

標(biāo)簽:喀什 崇左 安康 海南 山西 長沙 濟(jì)南 山西

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python實戰(zhàn)之畫哆啦A夢(超詳細(xì)步驟)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266