一、繪圖命令
操縱海龜繪圖有很多命令,可以划分為三種:畫筆運動命令、畫筆控制命令、全局控制命令
畫筆運動命令
| 命令 | 說明 |
|---|---|
| turtle.forward(distance) | 向當前畫筆方向移動distance像素長度 |
| turtle.backward(distance) | 向當前畫筆相反方向移動distance像素長度 |
| turtle.right(degree) | 順時針移動degree° |
| turtle.left(degree) | 逆時針移動degree° |
| turtle.pendown() | 移動時繪制圖形,缺少參數時也為繪制 |
| turtle.goto(x,y) | 將畫筆移動到坐標為(x,y)的位置 |
| turtle.penup() | 提起畫筆,不繪制圖形,用於另起一個地方繪制 |
| turtle.circle() | 畫圓,半徑為正(負),表示圓心在畫筆的左邊(右邊)畫圓 |
| setx() | 將當前x軸移動到指定位置 |
| sety() | 將當前y軸移動到指定位置 |
| setheading(angle) | 設置當前朝向為angle的角度 |
| home() | 設置當前畫筆位置為原點,朝向向東 ° |
畫筆控制命令
| 命令 | 說明 |
|---|---|
| turtle.fillcolor(colorstring) | 繪制圖形填充顏色 |
| turtle.color(color1, color2) | 同時設置 pencolor = color1,fillcolor = color2 |
| turtle.filling() | 返回當前是否在填充狀態 |
| turtle.begin_fill() | 准備開始填充圖形 |
| turtle.end_fill() | 填充完成 |
| turtle.hideturtle() | 隱藏畫筆的turtle形狀 |
| turtle.showturtle() | 顯示畫筆的turtle形狀 |
全局控制命令
| 命令 | 說明 |
|---|---|
| turtle.clear() | 清空turtle窗口,但是turtle的位置和狀態不會發生變化 |
| turtle.reset() | 清空窗口,重置turtle狀態為起始狀態 |
| turtle.undo() | 撤銷上一個turtle動作 |
| turtle.isvisible() | 返回當前turtle是否可見 |
| stamp() | 復制當前圖形 |
| turtle.write(s[,font = ("font_name",font_size,"font_type")]) | 寫文本,s為文本內容,font是字體參數,分別是字體名稱,字體大小和類型,font和font的參數都是可選選項 |
案例
案例一
- 熟悉turtle坐標體系
# 導入 turtle 模塊
import turtle as t
t.goto(100,100)
t.goto(100,-100)
t.goto(-100,-100)
t.goto(-100,100)
t.goto(0,0)
t.done()

案例二
- 畫筆自動繪圖
# 用for循環初步實現畫筆自動繪圖
import turtle as t
for i in range(20):
# 畫筆向前移動
t.forward(100 + 10 * i)
# 順時針旋轉120°
t.right(120)
t.done()

案例三
- 顯示畫筆運動印記
# 用for循環初步實現畫筆自動繪圖並顯示其印記
import turtle as t
for i in range(20):
# 畫筆向前移動
t.forward(100 + 10 * i)
#t.shape("turtle") # 海龜
#t.shape("circle") # 圓
t.shape("square") # 正方形
# 打印turtle印記
t.stamp()
# 順時針旋轉60°
t.right(60)
t.done()

案例四
- 畫筆及填充控制
# 繪制金光閃閃的太陽
import turtle as t
# 為小數時表示占據電腦屏幕的比例
t.setup(width = 0.6, height = 0.6)
# t.pencolor("red")
t.color("red", "yellow")
t.begin_fill()
# 控制繪圖時間
t.speed(20)
while True:
t.forward(200)
t.left(170)
# print(t.pos())
if abs(t.pos()) < 1:
break
t.end_fill()
t.write("一顆金光閃閃的太陽", align = "right", font = ("Arial", 20, "normal"))
t.done()

案例五
- 畫圓形類的圖
# 粉色的愛心
import turtle as t
t.setup(800,800)
t.speed(8)
# 設置畫筆大小
t.pensize(10)
t.hideturtle()
t.pencolor("pink")
t.left(45)
t.forward(80)
t.circle(35,210)
t.right(150)
t.circle(35,210)
t.forward(80)
t.done()

