python中控制画笔前进的函数_Python 的turtle笔记

这篇博客介绍了Python的Turtle库,详细讲解了如何控制画笔的前进、颜色、速度,以及画直线、曲线和旋转方向的方法。通过实例演示了如何绘制五角星,帮助读者掌握Turtle库的基本用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python turtle库

1,Turtle库可以看作是小乌龟,在一个横轴为x、纵轴为y的平面坐标系中移动,并在爬行的路径上绘制了图形。turtle.setup(width, height, startx,starty)

width, height: 宽和高

startx, starty: 矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心

1)  turtle.pensize() :设置画笔的宽度;==turtle.width()

2)  turtle.pencolor() :没有参数传入返回当前画笔颜色;传入参数设置画笔颜色,可以是字符串如"green", "red",也可以是RGB值。

>>> pencolor('brown') >>> tup = (0.2, 0.8, 0.55) >>> pencolor(tup) >>> pencolor() '#33cc8c'

3)  turtle.speed(speed) :设置画笔移动速度,画笔绘制的速度范围[0,10]整数, 数字越大越快

画笔

在画布上,默认有一个坐标原点为画布中心的坐标轴, 坐标原点上有一只面朝x轴正方向小乌龟。

这里我们描述小乌龟时使用了两个词语:标原点(位置),面朝x轴正方向(方向),turtle绘图中, 就是使用位置方向描述小乌龟(画笔)的状态。

画笔控制函数

画笔操作后一直有效,一般成对出现

Turtle.penup()                抬起画笔,海龟在飞行

Turtle.pendown()            落下画笔,海龟在爬行

Turtle.penside(width)      画笔宽度,海龟的腰围

Turtle.pencolor(color)     画笔颜色,海龟在涂装

其中,pencolor有三种形式:

(1)颜色字符串

(2)RGB的小数值

(3)RGB的元组值

运动控制函数

控制海龟行进:走直线&走曲线

画笔设置后一直有效,直至下一次重新设置

Turtle.forward(d)                       向前进,海龟走直线

d:行进距离,可以为负数

Turtle.circle(r,extent=None)      根据半径r绘制extent角度的弧形

r:默认圆心在海龟左侧r距离的位置

extent:绘制角度,默认是360度整圆

方向控制函数

控制海龟面向方向:绝对角度&海龟角度

Turtle.setheading(angle)      改变行进方向,海龟走角度

angle:行进方向的绝对角度

Turtle.left(angle)                   海龟向左转

Turtle.right(angle)                 海龟向右转

angle:在海龟当前行进方向上旋转的角度

RGB色彩体系

RGB指红蓝绿三个通道的颜色组合,每色取值范围0-255整数或0-1小数,默认采用小数值,可切换为整数值

Turtle.colormode(mode)      1.0:RGB小数值模式

255:RGB整数值模式

常用RGB色彩:

06c54a8b1faa23fb51308210a8786ecd.png

24882d4375e2d2f5282e126e89285855.png

空间坐标体系

2519ec7d10c6a20f904a285e849d6e1c.png

18464f8e4d320781278d594b3bfb84bc.png

角度坐标体系

0045d0aa6152be5a0fa4c38d0a0ee204.png

668c8dd52dce98d8c1a57e6e59990e58.png

3 绘图举例

绘制五角星

import math

import turtle

RADIUS = 100

angleSin18 = math.sin(math.pi * 0.1) * RADIUS

angleCos18 = math.cos(math.pi * 0.1) * RADIUS

angleSin54 = math.sin(math.pi * 0.3) * RADIUS

angleCos54 = math.cos(math.pi * 0.3) * RADIUS

turtle.width(10)

turtle.color("Yellow")

turtle.penup()

turtle.goto(-angleCos18, angleSin18)

turtle.pendown()

turtle.goto(angleCos18, angleSin18)

turtle.goto(-angleCos54, -angleSin54)

turtle.goto(0, RADIUS)

turtle.goto(angleCos54, -angleSin54)

turtle.goto(-angleCos18,

fc130269b78aad7bd6984091976a0687.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值