Python的turtle繪圖庫使用基礎(chǔ)
turtle庫是Python語言中一個(gè)很流行的繪制圖像的函數(shù)庫,想象一個(gè)小烏龜,在一個(gè)x(橫軸)和y(縱軸)的坐標(biāo)系原點(diǎn),(0,0)位置開始,它根據(jù)一組函數(shù)指令的控制,在這個(gè)平面坐標(biāo)系中移動(dòng),從而在它爬行的路徑上繪制了圖形。
turtle繪圖窗體布局
turtle的繪圖窗體是turtle的一個(gè)畫布空間,最小單位是像素
turtle.setup(width, height, startx, starty),setup()設(shè)置窗體大小及位置,它不是必須的,后兩個(gè)參數(shù)可選,不選時(shí)默認(rèn)在屏幕正中間 turtle空間坐標(biāo)系
絕對(duì)坐標(biāo):
turtle.goto(x, y),使海龜由當(dāng)前位置沿直線移動(dòng)到(x, y)處
海龜坐標(biāo):
絕對(duì)角度:
RGB色彩體系
RGB每種顏色取值范圍是0~255的整數(shù)或0~1的小數(shù)
默認(rèn)采用小數(shù)值,可切換為整數(shù)值
turtle.colormode(mode),mode為1.0,切換至小數(shù)值模式,mode為255,切換至整數(shù)值模式
turtle畫筆控制函數(shù)
- turtle.penup(),別名turtle.pu(),抬起畫筆,移動(dòng)時(shí)無痕跡
- turtle.pendown(),別名turtle.pd(),落下畫筆,移動(dòng)時(shí)有痕跡
- turtle.pensize(width),別名turtle.width(width),畫筆寬度
- turtle.pencolor(color),color為顏色字符串或r,g,b值,畫筆顏色,有三種形式
- 顏色字符串:turtle.pencolor(“purple”)
- RGB的小數(shù)值:turtle.pencolor(0.63, 0.13, 0.94)
- RGB的元組值:turtle.pencolor( (0.63, 0.13, 0.94) )
turtle運(yùn)動(dòng)控制函數(shù)
控制海龜行進(jìn):走直線或走曲線,畫筆設(shè)置后一直有效,直到下次重新設(shè)置
- turtle.goto(x, y),使海龜由當(dāng)前位置沿直線移動(dòng)到絕對(duì)位置的(x, y)處
- turtle.forward(d),別名turtle.fd(d),海龜向前行進(jìn)距離d,d為行進(jìn)距離 (可以為負(fù)值)
- turtle.backward(d),別名turtle.bk(d),海龜沿著反方向運(yùn)行距離d
- turtle.circle(r, extent=None),根據(jù)半徑r繪制extent角度的弧形,r表示默認(rèn)圓心在海龜左側(cè)r距離的位置(負(fù)值表示右側(cè)),extent表示繪制角度,默認(rèn)是360度 (整圓)
turtle方向控制函數(shù)
控制海龜面對(duì)的方向:絕對(duì)角度或海龜角度
- turtle.setheading(angle),別名turtle.seth(angle) ,改變海龜行進(jìn)的方向,angle為絕對(duì)度數(shù)(0~360度,可以為負(fù))
- turtle.left(angle),海龜向左轉(zhuǎn),angle表示海龜角度(在海龜當(dāng)前行進(jìn)方向上旋轉(zhuǎn)的角度)
- turtle.right(angle),海龜向右轉(zhuǎn),angle表示海龜角度(在海龜當(dāng)前行進(jìn)方向上旋轉(zhuǎn)的角度)
其他:
turtle.done(),往往放在程序結(jié)尾,如果是文件式描寫方法,程序運(yùn)行之后,不會(huì)自動(dòng)退出,需要手動(dòng)關(guān)閉窗體退出
turtle常用函數(shù)庫
在lib目錄下有一個(gè)turtle.py文件,這就是turtle的安裝目錄。官方文檔:https://docs.python.org/3/library/turtle.html
turtle庫畫筆狀態(tài)控制函數(shù)
函數(shù) | 描述 |
penup() | pu() | up() | 提起畫筆,與pendown()配對(duì)使用 |
pendown() | pd() | down() | 放下畫筆 |
pensize() | width() | 設(shè)置畫筆線條的粗細(xì)為指定大小 |
turtle庫的畫筆運(yùn)動(dòng)的函數(shù)
函數(shù) | 描述 |
forward() | fd() | 沿著當(dāng)前方向前進(jìn)指定距離 |
backward() | bk() | back() | 沿著當(dāng)前相反方向后退指定距離 |
right(angle) | rt(angle) | 向右旋轉(zhuǎn)angle角度 |
left(angle) | lt(angle) | 向左旋轉(zhuǎn)angle角度 |
goto(x, y) | setpos(x, y) | setposition(x, y) | 移動(dòng)到絕對(duì)坐標(biāo)(x, y)處 |
setx() | 將當(dāng)前x軸移動(dòng)到指定位置 |
sety() | 將當(dāng)前y軸移動(dòng)到指定位置 |
setheading(angle) | seth(angle) | 設(shè)置當(dāng)前朝向?yàn)閍ngle的角度 |
home() | 設(shè)置當(dāng)前畫筆位置為原點(diǎn),朝向東 |
circle(step) | 繪制一個(gè)指定半徑、角度以及繪制步驟step的圓 |
dot(r, color) | 繪制一個(gè)指定半徑r和顏色color的圓點(diǎn) |
undo() | 撤銷畫筆最后一步動(dòng)作 |
speed() | 設(shè)置的繪制速度,參數(shù)為0 - 10之間 |
turtle庫的控制畫筆和字體函數(shù)
函數(shù) | 描述 |
color() | 設(shè)置畫筆的顏色 |
pencolor() | 設(shè)置畫筆的顏色 |
fillcolor() | 設(shè)置填充顏色 |
begin_fill() | 填充圖形前,調(diào)用該方法 |
end_fill() | 填充圖形結(jié)束 |
filling() | 返回填充的狀態(tài),True為填充,F(xiàn)alse為未填充 |
clear() | 清空當(dāng)前窗口,但不改變當(dāng)前畫筆的位置 |
reset() | 清空當(dāng)前窗口,并重置位置狀態(tài)為默認(rèn)值 |
screensize() | 設(shè)置畫面的長(zhǎng)和寬 |
hideturtle() | 隱藏畫筆的turtle形狀 |
showturtle() | 顯示畫筆的turtle形狀 |
isvisible() | 如果turtle可見,則返回Ture |
write(str, font = None) | 輸出font字體的字符串 |
到此這篇關(guān)于Python的turtle繪圖庫使用基礎(chǔ)的文章就介紹到這了,更多相關(guān)Python turtle繪圖庫內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python pytest進(jìn)階之conftest.py詳解
這篇文章主要介紹了python pytest進(jìn)階之conftest.py詳解,如果我們?cè)诰帉憸y(cè)試用的時(shí)候,每一個(gè)測(cè)試文件里面的用例都需要先登錄后才能完成后面的操作,那么們?cè)撊绾螌?shí)現(xiàn)呢?這就需要我們掌握conftest.py文件的使用了,需要的朋友可以參考下2019-06-06python cv2讀取rtsp實(shí)時(shí)碼流按時(shí)生成連續(xù)視頻文件方式
今天小編就為大家分享一篇python cv2讀取rtsp實(shí)時(shí)碼流按時(shí)生成連續(xù)視頻文件方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-12-12Python實(shí)現(xiàn)滑塊驗(yàn)證碼詳解
驗(yàn)證碼作為一種自然人的機(jī)器人的判別工具,被廣泛的用于各種防止程序做自動(dòng)化的場(chǎng)景中。傳統(tǒng)的字符型驗(yàn)證安全性已經(jīng)名存實(shí)亡的情況下,各種新型的驗(yàn)證碼如雨后春筍般涌現(xiàn),今天給大家分享一篇Python實(shí)現(xiàn)滑塊驗(yàn)證碼2022-05-05Python實(shí)現(xiàn)普通圖片轉(zhuǎn)ico圖標(biāo)的方法詳解
ICO是一種圖標(biāo)文件格式,圖標(biāo)文件可以存儲(chǔ)單個(gè)圖案、多尺寸、多色板的圖標(biāo)文件。本文將利用Python實(shí)現(xiàn)普通圖片轉(zhuǎn)ico圖標(biāo),感興趣的小伙伴可以了解一下2022-11-11Python使用tablib生成excel文件的簡(jiǎn)單實(shí)現(xiàn)方法
這篇文章主要介紹了Python使用tablib生成excel文件的方法,結(jié)合實(shí)例形式分析了tablib模塊的相關(guān)使用技巧,需要的朋友可以參考下2016-03-03python3 numpy中數(shù)組相乘np.dot(a,b)運(yùn)算的規(guī)則說明
這篇文章主要介紹了python3 numpy中數(shù)組相乘np.dot(a,b)運(yùn)算的規(guī)則說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03python 實(shí)現(xiàn)非極大值抑制算法(Non-maximum suppression, NMS)
這篇文章主要介紹了python 如何實(shí)現(xiàn)非極大值抑制算法(Non-maximum suppression, NMS),幫助大家更好的進(jìn)行機(jī)器學(xué)習(xí),感興趣的朋友可以了解下2020-10-10