1. 海归绘图的方法1. 第一只小海龟(圆)2. 绘制正方形3. 螺旋线
1. 方型螺旋线2. 圆型螺旋线3. 左转其它角度 4. 扩展
1. 多边形2. 多边形3. 根据提示绘制图形4. 扇形5. 太阳花6. 利用循环嵌套画正方形
1. 海归绘图的方法- 运动类方法
| 方法 | 缩写 | 解释 |
|---|---|---|
| forward(a) | fd() | 前进a像素 |
| backward(a) | bk() | 后退a像素 |
| right() | rt() | 右转(顺时针) |
| left() | lt() | 左转(逆时针) |
| goto() ,setpos() , setposition() | 前往/定位 | |
| setx() | 设置x坐标 | |
| sety() | 设置y坐标 | |
| setheading() | seth() | 设置海龟的朝向为0(东)、90(北)、180(西)或 270(南)。 |
| home() | 返回原点(0,0),并设置朝向为初始方向 | |
| circle() | 画圆,circle(半径,圆心角大小,起点到终点的线段数) | |
| dot() | 画点 | |
| speed() | 速度 |
- 画笔方法
| 方法 | 解释 |
|---|---|
| pen() | 画笔 |
| pendown() | 画笔落下 |
| penup() | 画笔抬起 |
| pensize() | 画笔粗细 |
| color() | 颜色 |
| pencolor() | 画笔颜色 |
| fillcolor() | 填充颜色 |
| filling() | 是否填充 |
| begin_fill() | 开始填充 |
| end_fill() | 结束填充 |
| shape() | 形状 |
| hideturtle() , ht() | 隐藏海龟 |
import turtle as t t.circle(100) # circle代表圆,100是圆的半径2. 绘制正方形
t.forward(100) # 画直线 t.left(90) t.forward(100) # 画直线 t.left(90) t.forward(100) # 画直线 t.left(90) t.forward(100) # 画直线3. 螺旋线 1. 方型螺旋线
import turtle as t
t.speed(0) #速度 0最快
for i in range(1,100): #循环 表示总共 有多少条 边
t.forward(i) #先前移动i个像素点
t.left(90) # 向左旋转90°
t.speed(0)
for i in range(1,100):
t.forward(i)
t.left(91) # 向左旋转91°
t.speed(0) #速度 0最快
for i in range(1,100):
t.circle(2 * i)
t.left(91)
2. 圆型螺旋线
t.speed(0)
t.color('blue')
for i in range(1,100):
t.circle(i)
t.left(60)
t.speed(0) #速度 0最快
colors = ["red","green","yellow","blue"]
for i in range(101):
t.pencolor(colors[i%4])
t.forward(i)
t.left(91)
3. 左转其它角度
import turtle as t
t.speed(0)
t.bgcolor('black')
t.color('red')
width = 0 # 初始前进像素
for i in range(100):
width += 3
t.forward(width)
t.left(144) # 120 121 165 90 89 144 143
import turtle as t
t.speed(0) #速度 0最快
colors = ["red","green","yellow","blue"]
a = [1,2,3,3] # 前进像素
b = [40,30,20,10] # 四种颜色重复的次数
width = 0 # 初始前进像素
for i in range(4):
t.color(colors[i])
for j in range(b[i]):
width += a[i]
t.forward(width)
t.left(65) # 65 143 144 165 179
4. 扩展
1. 多边形
t.penup()
t.goto(-100,-200)
t.pendown()
color = ['red','black','blue','yellow','green','pink','purple','brown']
for i in range(8):
t.color(color[i])
for i in range(8):
t.forward(50)
t.left(360//8)
t.forward(200)
t.left(360//8)
t.speed(0)
t.color('red')
for i in range(9):
for j in range(4):
t.forward(100)
t.left(90)
t.left(360//9)
2. 多边形
3. 根据提示绘制图形
import turtle as t
window = t.Screen()
def fun(a,b):
for j in range(a):
t.forward(b)
t.left(360 // a)
t.speed(0)
t.color('red')
a = int(window.textinput('你要画的边数','请输入边数'))
b = int(window.textinput('你要画多长的边','请输入一个长度'))
4. 扇形
import turtle as t
t.speed(0) # 画笔速度
t.bgcolor('green') # 背景色
t.color('white') # 画笔颜色
t.left(20) # 开始前先左转
for i in range(70):
t.forward(200) # 前进
t.backward(200) # 退回来,接着画(不后退会一直向前画)
t.left(2) # 每次左转2度
5. 太阳花
import turtle as t
t.hideturtle() # 隐藏画笔
t.speed(0) # 设置画笔速度, 速度值从 1 到 10(1 最慢, 10 快, 0 最快)
t.width(3) # 设置画笔粗细
t.color('yellow','red') # 背景色为yellow,填充为red
t.begin_fill() # 开始填充
for i in range(36):
t.forward(200)
t.left(170)
t.end_fill() # 结束填充
6. 利用循环嵌套画正方形
import turtle as t
t.ht() # 隐藏画笔
t.speed(0)
t.color('red')
t.width(3)
for i in range(3):
t.setheading(45) # 每次画正方形都需要朝向45度方向,(0东,90北,180西,270南)。
for i in range(4):
t.pendown() # 每次画落笔
t.forward(50)
t.left(90)
t.penup() # 移动前抬笔
t.setheading(0) # 并且再设置朝向
t.forward(55)



