Python的turtle繪圖庫使用基礎
turtle庫是Python語言中一個很流行的繪制圖像的函數庫,想象一個小烏龜,在一個x(橫軸)和y(縱軸)的坐標系原點,(0,0)位置開始,它根據一組函數指令的控制,在這個平面坐標系中移動,從而在它爬行的路徑上繪制瞭圖形。
turtle繪圖窗體佈局
turtle的繪圖窗體是turtle的一個畫佈空間,最小單位是像素
turtle.setup(width, height, startx, starty),setup()設置窗體大小及位置,它不是必須的,後兩個參數可選,不選時默認在屏幕正中間 turtle空間坐標系
絕對坐標:
turtle.goto(x, y),使海龜由當前位置沿直線移動到(x, y)處
海龜坐標:
絕對角度:
RGB色彩體系
RGB每種顏色取值范圍是0~255的整數或0~1的小數
默認采用小數值,可切換為整數值
turtle.colormode(mode),mode為1.0,切換至小數值模式,mode為255,切換至整數值模式
turtle畫筆控制函數
- turtle.penup(),別名turtle.pu(),抬起畫筆,移動時無痕跡
- turtle.pendown(),別名turtle.pd(),落下畫筆,移動時有痕跡
- turtle.pensize(width),別名turtle.width(width),畫筆寬度
- turtle.pencolor(color),color為顏色字符串或r,g,b值,畫筆顏色,有三種形式
- 顏色字符串:turtle.pencolor(“purple”)
- RGB的小數值:turtle.pencolor(0.63, 0.13, 0.94)
- RGB的元組值:turtle.pencolor( (0.63, 0.13, 0.94) )
turtle運動控制函數
控制海龜行進:走直線或走曲線,畫筆設置後一直有效,直到下次重新設置
- turtle.goto(x, y),使海龜由當前位置沿直線移動到絕對位置的(x, y)處
- turtle.forward(d),別名turtle.fd(d),海龜向前行進距離d,d為行進距離 (可以為負值)
- turtle.backward(d),別名turtle.bk(d),海龜沿著反方向運行距離d
- turtle.circle(r, extent=None),根據半徑r繪制extent角度的弧形,r表示默認圓心在海龜左側r距離的位置(負值表示右側),extent表示繪制角度,默認是360度 (整圓)
turtle方向控制函數
控制海龜面對的方向:絕對角度或海龜角度
- turtle.setheading(angle),別名turtle.seth(angle) ,改變海龜行進的方向,angle為絕對度數(0~360度,可以為負)
- turtle.left(angle),海龜向左轉,angle表示海龜角度(在海龜當前行進方向上旋轉的角度)
- turtle.right(angle),海龜向右轉,angle表示海龜角度(在海龜當前行進方向上旋轉的角度)
其他:
turtle.done(),往往放在程序結尾,如果是文件式描寫方法,程序運行之後,不會自動退出,需要手動關閉窗體退出
turtle常用函數庫
在lib目錄下有一個turtle.py文件,這就是turtle的安裝目錄。官方文檔:https://docs.python.org/3/library/turtle.html
turtle庫畫筆狀態控制函數
函數 | 描述 |
penup() | pu() | up() | 提起畫筆,與pendown()配對使用 |
pendown() | pd() | down() | 放下畫筆 |
pensize() | width() | 設置畫筆線條的粗細為指定大小 |
turtle庫的畫筆運動的函數
函數 | 描述 |
forward() | fd() | 沿著當前方向前進指定距離 |
backward() | bk() | back() | 沿著當前相反方向後退指定距離 |
right(angle) | rt(angle) | 向右旋轉angle角度 |
left(angle) | lt(angle) | 向左旋轉angle角度 |
goto(x, y) | setpos(x, y) | setposition(x, y) | 移動到絕對坐標(x, y)處 |
setx() | 將當前x軸移動到指定位置 |
sety() | 將當前y軸移動到指定位置 |
setheading(angle) | seth(angle) | 設置當前朝向為angle的角度 |
home() | 設置當前畫筆位置為原點,朝向東 |
circle(step) | 繪制一個指定半徑、角度以及繪制步驟step的圓 |
dot(r, color) | 繪制一個指定半徑r和顏色color的圓點 |
undo() | 撤銷畫筆最後一步動作 |
speed() | 設置的繪制速度,參數為0 – 10之間 |
turtle庫的控制畫筆和字體函數
函數 | 描述 |
color() | 設置畫筆的顏色 |
pencolor() | 設置畫筆的顏色 |
fillcolor() | 設置填充顏色 |
begin_fill() | 填充圖形前,調用該方法 |
end_fill() | 填充圖形結束 |
filling() | 返回填充的狀態,True為填充,False為未填充 |
clear() | 清空當前窗口,但不改變當前畫筆的位置 |
reset() | 清空當前窗口,並重置位置狀態為默認值 |
screensize() | 設置畫面的長和寬 |
hideturtle() | 隱藏畫筆的turtle形狀 |
showturtle() | 顯示畫筆的turtle形狀 |
isvisible() | 如果turtle可見,則返回Ture |
write(str, font = None) | 輸出font字體的字符串 |
到此這篇關於Python的turtle繪圖庫使用基礎的文章就介紹到這瞭,更多相關Python turtle繪圖庫內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 基於Python-turtle庫繪制路飛的草帽骷髏旗、美國隊長的盾牌、高達的源碼
- Python中turtle繪圖模塊的詳細講解
- Python繪圖之turtle庫的基礎語法使用
- Python+Turtle繪制蜘蛛俠的示例代碼
- 詳解Python如何利用turtle繪制中國結