Python繪制可愛的卡通人物 | 【turtle使用】


Turtle庫 簡介

什么是Turtle

首先懊直,turtle庫是一個點線面的簡單圖像庫笔宿,能夠完成一些比較簡單的幾何圖像可視化。它就像一個小烏龜稳摄,在一個橫軸為x稚字、縱軸為y的坐標(biāo)系原點,(0,0)位置開始厦酬,它根據(jù)一組函數(shù)指令的控制胆描,在這個平面坐標(biāo)系中移動,從而在它爬行的路徑上繪制了圖形仗阅。

Turtle庫基礎(chǔ)知識

1.畫布(canvas)

畫布就是turtle為我們展開用于繪圖區(qū)域默認(rèn)大小(400, 300)昌讲,我們可以設(shè)置它的大小和初始位置。

2.畫筆(pen)

2.1畫筆的狀態(tài)

在畫布上减噪,默認(rèn)有一個坐標(biāo)原點為畫布中心的坐標(biāo)軸短绸,坐標(biāo)原點上有一只面朝x軸正方向小烏龜。這里我們描述小烏龜時使用了兩個詞語:坐標(biāo)原點(位置)筹裕,面朝x軸正方向(方向)醋闭, turtle繪圖中,就是使用位置方向描述小烏龜(畫筆)的狀態(tài)饶碘。

2.2 畫筆的屬性

畫筆(畫筆的屬性目尖,顏色、畫線的寬度等)

1)turtle.pensize():設(shè)置畫筆的寬度扎运;

2)turtle.pencolor():沒有參數(shù)傳入瑟曲,返回當(dāng)前畫筆顏色,傳入?yún)?shù)設(shè)置畫筆顏色豪治,可以是字符串如"green",?"red",也可以是RGB3元組洞拨。

3)turtle.speed(speed):設(shè)置畫筆移動速度,畫筆繪制的速度范圍[0,10]整數(shù)负拟,數(shù)字越大越快烦衣。

2.3 繪圖命令

操縱海龜繪圖有著許多的命令,這些命令可以劃分為3種:一種為運動命令掩浙,一種為畫筆控制命令花吟,還有一種是全局控制命令。

2.3.1 畫筆運動命令:

命令說明

turtle.home()將turtle移動到起點(0,0)和向東

turtle.speed(speed)畫筆繪制的速度范圍[0,10]整數(shù)

turtle.forward(distance)向當(dāng)前畫筆方向移動distance像素長

turtle.backward(distance)向當(dāng)前畫筆相反方向移動distance像素長度

turtle.right(degree)順時針移動degree°

turtle.left(degree)逆時針移動degree°

turtle.pendown()移動時繪制圖形放下筆,,默認(rèn)繪制

turtle.penup()移動時不繪制圖形,提起筆厨姚,用于另起一個地方繪制時用

turtle.circle(r,extent,step)繪制一個指定半徑衅澈、弧度范圍、階數(shù)(正多邊形)的圓

turtle.dot(diameter,color)繪制一個指定直徑和顏色的圓

2.3.2 畫筆控制命令:

命令說明

turtle.pencolor()畫筆顏色

turtle.pensize(width)畫筆寬度(繪制圖形時的寬度)

turtle.color(color1, color2)同時設(shè)置pencolor=color1, fillcolor=color2

turtle.filling()返回當(dāng)前是否在填充狀態(tài)

turtle.begin_fill()準(zhǔn)備開始填充圖形

turtle.end_fill()填充完成

turtle.hideturtle()隱藏畫筆的turtle形狀

turtle.showturtle()顯示畫筆的turtle形狀

2.3.3 全局控制命令

命令說明

turtle.clear()清空turtle窗口谬墙,但是turtle的位置和狀態(tài)不會改變

turtle.reset()清空窗口今布,重置turtle狀態(tài)為起始狀態(tài)

turtle.undo()取消最后一個圖的操作

turtle.isvisible()返回當(dāng)前turtle是否可見

turtle.stamp()復(fù)制當(dāng)前圖形

turtle.write(s , [font=("font-name",font_size,"font_type")])寫文本经备,s為文本內(nèi)容,font是字體的參數(shù)部默,分別為字體名稱侵蒙,大小和類型;font為可選項傅蹂,font參數(shù)也是可選項

2.2.3其他命令

命令說明

turtle.mainloop()或turtle.done()啟動事件循環(huán) -調(diào)用Tkinter的mainloop函數(shù)纷闺。必須是烏龜圖形程序中的最后一個語句。

turtle.mode(mode=None)設(shè)置烏龜模式(“standard”贬派,“l(fā)ogo(向北或向上)”或“world()”)并執(zhí)行重置急但。如果沒有給出模式,則返回當(dāng)前模式搞乏。

turtle.undo()取消最后一個圖的操作

turtle.isvisible()返回當(dāng)前turtle是否可見

turtle.stamp()復(fù)制當(dāng)前圖形

turtle.write(s , [font=("font-name",font_size,"font_type")])寫文本波桩,s為文本內(nèi)容,font是字體的參數(shù)请敦,分別為字體名稱镐躲,大小和類型;font為可選項侍筛,font參數(shù)也是可選項

Turtle總結(jié)和展示

Turtle可以實現(xiàn)很多好玩的東西萤皂,例如我在知乎和其他地方看到別人畫“小豬佩奇”,“叮當(dāng)貓”匣椰,“花花草草”等裆熙,世界很大,還有很多好玩的等著我們G菪ΑH肼肌!

defmain():

????setting()#畫布佳镜、畫筆設(shè)置

????nose(-100,100)#鼻子

????head(-69,167)#頭

????ears(0,160)#耳朵

????eyes(0,140)#眼睛????

????cheek(80,10)#腮

????mouth(-20,30)#嘴

????body(-32,-8)#身體

????hands(-56,-45)#手

????foot(2,-177)#腳

????tail(148,-155)#尾巴

????done()#結(jié)束


代碼:https://github.com/SCUTPZW/-visualization

https://github.com/AnthonyCoder/PythonSample/tree/master/turtle

主要參考:http://www.reibang.com/p/df81a110cdfd

//www.zhihu.com/question/275611095/answer/382959285

附帶解決No Module named tkinker的問題

https://blog.csdn.net/qq_33144323/article/details/80556954


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末僚稿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子蟀伸,更是在濱河造成了極大的恐慌蚀同,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,576評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件啊掏,死亡現(xiàn)場離奇詭異蠢络,居然都是意外死亡,警方通過查閱死者的電腦和手機迟蜜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評論 3 399
  • 文/潘曉璐 我一進店門刹孔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人小泉,你說我怎么就攤上這事芦疏。” “怎么了微姊?”我有些...
    開封第一講書人閱讀 168,017評論 0 360
  • 文/不壞的土叔 我叫張陵酸茴,是天一觀的道長。 經(jīng)常有香客問我兢交,道長薪捍,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,626評論 1 296
  • 正文 為了忘掉前任配喳,我火速辦了婚禮酪穿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘晴裹。我一直安慰自己被济,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,625評論 6 397
  • 文/花漫 我一把揭開白布涧团。 她就那樣靜靜地躺著只磷,像睡著了一般。 火紅的嫁衣襯著肌膚如雪泌绣。 梳的紋絲不亂的頭發(fā)上钮追,一...
    開封第一講書人閱讀 52,255評論 1 308
  • 那天,我揣著相機與錄音阿迈,去河邊找鬼元媚。 笑死,一個胖子當(dāng)著我的面吹牛苗沧,可吹牛的內(nèi)容都是我干的刊棕。 我是一名探鬼主播,決...
    沈念sama閱讀 40,825評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼崎页,長吁一口氣:“原來是場噩夢啊……” “哼鞠绰!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起飒焦,我...
    開封第一講書人閱讀 39,729評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蜈膨,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后牺荠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體翁巍,經(jīng)...
    沈念sama閱讀 46,271評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,363評論 3 340
  • 正文 我和宋清朗相戀三年休雌,在試婚紗的時候發(fā)現(xiàn)自己被綠了灶壶。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,498評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡杈曲,死狀恐怖驰凛,靈堂內(nèi)的尸體忽然破棺而出胸懈,到底是詐尸還是另有隱情,我是刑警寧澤恰响,帶...
    沈念sama閱讀 36,183評論 5 350
  • 正文 年R本政府宣布趣钱,位于F島的核電站,受9級特大地震影響胚宦,放射性物質(zhì)發(fā)生泄漏首有。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,867評論 3 333
  • 文/蒙蒙 一枢劝、第九天 我趴在偏房一處隱蔽的房頂上張望井联。 院中可真熱鬧,春花似錦您旁、人聲如沸烙常。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽军掂。三九已至,卻和暖如春昨悼,著一層夾襖步出監(jiān)牢的瞬間蝗锥,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評論 1 272
  • 我被黑心中介騙來泰國打工率触, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留终议,地道東北人。 一個月前我還...
    沈念sama閱讀 48,906評論 3 376
  • 正文 我出身青樓葱蝗,卻偏偏與公主長得像穴张,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子两曼,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,507評論 2 359

推薦閱讀更多精彩內(nèi)容

  • Turtle庫是Python語言中一個很流行的繪制圖像的函數(shù)庫皂甘,想象一個小烏龜,在一個橫軸為x悼凑、縱軸為y的坐標(biāo)系原...
    yeszao閱讀 3,052評論 1 5
  • 前述:Python程序設(shè)計可以利用多種方法實現(xiàn)對圖像和圖像的呈現(xiàn)和處理偿枕,在這是利用Python3.x自帶的tkin...
    IIronMan閱讀 9,077評論 0 8
  • 學(xué)習(xí)來源:小象在學(xué)習(xí)turtle庫之前看一下可以做出那些有趣的圖 函數(shù)介紹: 畫布(canvas) turtle....
    落葉千山閱讀 5,080評論 0 4
  • 厄修安這個上等人可真不好當(dāng)啊渐夸。這就是木子晗拜見過厄修安的母親后的感受。 對于沒讓自己中意的二兒子當(dāng)選的母親對厄修安...
    謝爾格拉閱讀 202評論 0 0
  • 將Spark Standalone安裝到群集 手動啟動群集 群集啟動腳本 將應(yīng)用程序連接到群集 啟動Spark應(yīng)用...
    Liam_ml閱讀 927評論 0 0