今天继续给大家介绍Python相关知识,本文主要内容是Python Turtle绘图基础(三),包括Turtle色彩和Turtle画笔设置。
一、Turtle色彩设置
想要用Turtle绘制出更加复杂,更加美丽的图形,就必须学习Turtle的色彩设置。
Turtle的色彩设置支持两种模式,一种是常见的颜色单词,比如说red、blue、yellow等;另一种是通过RGB色彩体系。
RGB指红、蓝、绿三个通道颜色的组合,是目前计算机常用的色彩体系,基本上能够覆盖视力所能感知的所有颜色。使用RGB色彩体系来表示颜色,则需要一个三元组,分别表示红色、绿色、蓝色这三种颜色的强度,强度值可以是一个0-255的整数,也可以是0-1的小数,常见的RGB色彩表如下所示:
颜色 | RGB整数值 | RGB小数值 |
白色 | (255,255,255) | (0,0,0) |
黑色 | (0,0,0) | (0,0,0) |
黄色 | (255,255,0) | (1,1,0) |
洋红 | (255,0,255) | (1,0,1) |
青色 | (0,255,255) | (0,1,1) |
金色 | (255,215,0) | (1,0.96,0.93) |
紫色 | (160,32,240) | (0.63,0.13,0.94) |
粉红色 | (255,192,203) | (1,0.96,0.93) |
我们可以使用以下函数:
turtle.colormode(mode)
来设置颜色的模式,如果参数mode取值为255,则采用的是RGB整数值模式,如果参数mode取值为1.0,则采用的是RGB小数值模式。
如果我们要设置画笔的颜色,则可以使用以下函数:
turtle.pencolor(color)
其中color即表示画笔的颜色,通过这种方式,会将画笔颜色进行设置,但是不影响之前绘制线条的颜色。
二、Turtle画笔设置
为了更加方面的绘图,Turtle库还提供了一系列画笔控制函数,主要有以下三个:
1、turtle.pensize(width)
该函数用于设置画笔的粗细,width参数单位为像素,默认值为1,该函数还有别名turtle.width。
2、turtle.penup()
该函数没有参数,主要用于提起画笔,当画笔提起时,我们依旧可以控制画笔进行运动,但是此时的运动不会在绘图区域内留下任何痕迹。该函数也具有别名turtle.pu和turtle.up。
3、turtle.pendown()
与turtle.penup()函数对应的是turtle.pendown()函数,该函数用于放下画笔,当画笔放下后,画笔的运动会在绘图区域内留下痕迹。该函数也具有别名turtle.pd和turtle.down。
三、Turtle库画图案例
我们可以利用Turtle库的颜色控制函数来画一个多彩的五角星,代码如下所示:
import turtle
turtle.setup()
turtle.pencolor('red')
turtle.fd(100)
turtle.colormode(255)
turtle.pencolor(255,215,0)
turtle.rt(144)
turtle.forward(100)
turtle.colormode(1.0)
turtle.pencolor(0.63,0.13,0.94)
turtle.lt(-144)
turtle.bk(-100)
turtle.pencolor('blue')
turtle.right(144)
turtle.fd(100)
turtle.pencolor('yellow')
turtle.right(144)
turtle.fd(100)
上述代码绘制出的图形如下所示:
我们也可以利用Turtle库的画笔控制函数来画两个五角星,代码如下所示:
def FiveStar():
for i in range(5):
turtle.right(144)
turtle.fd(100)
import turtle
turtle.setup()
#绘制第一个五星
turtle.penup()
turtle.goto(10,100)
turtle.pendown()
FiveStar()
#绘制第二个五星
turtle.penup()
turtle.goto(150,100)
turtle.pendown()
FiveStar()
turtle.done()
上述代码绘制出的图形如下所示: