填充颜色

让图形更生动

填充颜色可以让我们的图形更加生动有趣!让我们学习如何给图形填充颜色。

基本填充

使用 begin_fill() 开始填充,使用 end_fill() 结束填充:

import turtle

t = turtle.Turtle()

# 设置填充颜色
t.fillcolor("red")

# 开始填充
t.begin_fill()

# 画一个正方形
for i in range(4):
    t.forward(100)
    t.right(90)

# 结束填充
t.end_fill()

同时设置画笔和填充颜色

你可以同时设置画笔颜色和填充颜色:

import turtle

t = turtle.Turtle()

# 设置画笔颜色和填充颜色
t.pencolor("blue")
t.fillcolor("lightblue")

# 开始填充
t.begin_fill()

# 画一个正方形
for i in range(4):
    t.forward(100)
    t.right(90)

# 结束填充
t.end_fill()

画彩色填充图形

让我们画一个彩色填充的三角形:

import turtle

t = turtle.Turtle()

# 画三个不同颜色的三角形
colors = ["red", "green", "blue"]
positions = [(-150, 0), (0, 0), (150, 0)]

for color, pos in zip(colors, positions):
    # 移动到指定位置
    t.penup()
    t.goto(pos[0], pos[1])
    t.pendown()

    # 设置颜色
    t.pencolor(color)
    t.fillcolor(color)

    # 开始填充
    t.begin_fill()

    # 画三角形
    for i in range(3):
        t.forward(100)
        t.right(120)

    # 结束填充
    t.end_fill()

画彩色花朵

让我们画一个彩色填充的花朵:

import turtle

t = turtle.Turtle()

# 花瓣颜色
petal_colors = ["red", "orange", "yellow", "pink", "purple"]

# 画花朵
t.penup()
t.goto(0, -100)  # 移动到起始位置
t.pendown()

# 画花心(黄色圆形)
t.fillcolor("yellow")
t.begin_fill()
t.circle(20)
t.end_fill()

# 画花瓣
for i, color in enumerate(petal_colors):
    # 计算花瓣位置
    angle = i * 72  # 360度/5个花瓣

    # 移动到花瓣位置
    t.penup()
    t.goto(0, 0)
    t.setheading(angle)
    t.forward(40)
    t.pendown()

    # 画花瓣
    t.fillcolor(color)
    t.pencolor(color)
    t.begin_fill()
    t.circle(30)
    t.end_fill()

画彩色房子

让我们画一个彩色填充的房子:

import turtle

t = turtle.Turtle()

# 画房子主体(红色)
t.penup()
t.goto(-100, -100)
t.pendown()
t.fillcolor("red")
t.pencolor("black")
t.begin_fill()
for i in range(4):
    t.forward(200)
    t.right(90)
t.end_fill()

# 画屋顶(绿色)
t.fillcolor("green")
t.begin_fill()
t.right(30)
t.forward(200)
t.right(120)
t.forward(200)
t.end_fill()

# 画门(棕色)
t.penup()
t.goto(-30, -100)
t.pendown()
t.fillcolor("brown")
t.begin_fill()
for i in range(2):
    t.forward(60)
    t.right(90)
    t.forward(100)
    t.right(90)
t.end_fill()

# 画窗户(蓝色)
t.penup()
t.goto(20, -50)
t.pendown()
t.fillcolor("lightblue")
t.begin_fill()
for i in range(4):
    t.forward(40)
    t.right(90)
t.end_fill()

t.penup()
t.goto(100, -50)
t.pendown()
t.fillcolor("lightblue")
t.begin_fill()
for i in range(4):
    t.forward(40)
    t.right(90)
t.end_fill()

练习

  1. 画一个彩色填充的五角星
  2. 画一个彩色填充的彩虹
  3. 画一个彩色填充的动物
  4. 创建你自己的彩色填充场景

小提示

  • 使用 t.fillcolor(color) 设置填充颜色
  • 使用 t.begin_fill() 开始填充
  • 使用 t.end_fill() 结束填充
  • 可以嵌套填充,创建更复杂的图形

思考题

如果你想画一个半透明的填充图形,应该怎么做呢?


下一课我们将学习如何写字和画圆!🐢

Python 工具/在线模拟器/Python海龟绘图可视化
Python海龟绘图可视化 - https://www.cnbbx.com/python-editor/