使⽤Python的pencolor函数实现渐变⾊功能
字符串函数怎么用前⾔
在学习turtle库绘图时,改变线条颜⾊往往可以获得惊艳的效果。对于pencolor函数的使⽤,简单的字符串调⽤颜⾊⼗分简单,但其乐趣远不⽌⼀个"red"、⼀个"blue"这样,利⽤RGB参数进⾏选⾊,还可以玩出渐变的花样
提⽰:以下是本篇⽂章正⽂内容,下⾯案例可供参考
⼀、RGB简介
RGB,⼯业界的⼀种颜⾊标准,说⽩了就是我们现在所能见到的⼏乎所有颜⾊都是红绿蓝三种颜⾊按照不同⽐例混合⽽成的。
⼆、RGB在pencolor中的应⽤
1.RGB模式
pencolor(R, G, B)的RGB模式有两种,1.0和255,1.0表⽰输⼊的RGB三值范围为[0,1]的⼩数,255表⽰输⼊的RGB三值范围为[0,255]的整数。
注:输⼊的RGB值须在该RGB模式的范围之内!
RGB三值部分对应颜⾊如下图所⽰(摘于⽹上,侵权删):
2.RGB模式切换
RGB模式可以通过colormode()函数进⾏切换,输⼊colormode(1.0)表⽰1.0模式,输⼊colormode(255)
表⽰255模式。
3.玩转渐变⾊
黄⾊渐变⾊效果图:
代码:
import turtle as t
from random import *
def gradient():
x = randint(-200, 200)
y = randint(0, 200)
r = 1
g = 1
b = y / 200
t.pencolor(r, g, b)
i = randint(3,20)
t.penup()
<(x, y)
t.pendown()
t.fd(i)
def main():
t.setup(400, 400, 800, 300)
t.bgcolor('black')
t.pensize(5)
for i in range(100):
gradient()
t.hideturtle()
t.update()
main()
注:黄⾊对应的RGB整数值为(255,255,0),对应的RGB⼩数值为(1,1,0),所以我们只要确定RG的值不变,改变B的值即可绘出黄⾊的渐变⾊!
那为什么表⽰轴坐标的y是随机变的,还会出现层次分明的渐变⾊的效果呢?
答:重点就是这个y了,因为b值调⽤的就是y值,⽽y值确定表⽰在y轴的位置确定的,b值确定表⽰颜⾊确定,所以才会出现层次分明的渐变⾊!
灰⾊渐变⾊效果图:
代码:
def gradient():
x = randint(-200, 200)
y = randint(0, 200)
r = y / 200
g = y / 200
b = y / 200
t.pencolor(r, g, b)
i = randint(3,20)
t.penup()
<(x, y)
t.pendown()
t.fd(i)
注:灰⾊对应的情况为RGB三值相等,由⿊⾊对应的RGB值为(0,0,0),⽩⾊对应的RGB值为(255,255,255),可知,我们只要确保RGB三值相等且其值在规定区间内变化,就能绘出灰⾊的渐变⾊!
总结
利⽤pencolor绘制渐变⾊有两步:⼀是熟悉pencolor函数的RGB模式怎么使⽤;⼆是了解所要绘制颜⾊对应的RGB值,通过改变RGB值来调渐变⾊。
到此这篇关于使⽤Python的pencolor函数实现渐变⾊功能的⽂章就介绍到这了,更多相关Python pencolor渐变⾊内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论