Python利用turtle库绘制彩虹代码示例

作者:Mrlboro 时间:2022-03-04 03:55:01 

语言:Python
IDE:Python.IDE

需求

做出彩虹效果

颜色空间

RGB模型:光的三原色,共同决定色相
HSB/HSV模型:H色彩,S深浅,B饱和度,H决定色相
需要将HSB模型转换为RGB模型

代码示例


#-*- coding:utf-8 –*-
from turtle import *

def HSB2RGB(hues):
hues = hues * 3.59 #100转成359范围
rgb=[0.0,0.0,0.0]
i = int(hues/60)%6
f = hues/60 -i
if i == 0:
 rgb[0] = 1; rgb[1] = f; rgb[2] = 0
elif i == 1:
 rgb[0] = 1-f; rgb[1] = 1; rgb[2] = 0
elif i == 2:
 rgb[0] = 0; rgb[1] = 1; rgb[2] = f
elif i == 3:
 rgb[0] = 0; rgb[1] = 1-f; rgb[2] = 1
elif i == 4:
 rgb[0] = f; rgb[1] = 0; rgb[2] = 1
elif i == 5:
 rgb[0] = 1; rgb[1] = 0; rgb[2] = 1-f
return rgb

def rainbow():
hues = 0.0
color(1,0,0)
#绘制彩虹
hideturtle()
speed(100)
pensize(3)
penup()
goto(-400,-300)
pendown()
right(110)
for i in range (100):
 circle(1000)
 right(0.13)
 hues = hues + 1
 rgb = HSB2RGB(hues)
 color(rgb[0],rgb[1],rgb[2])
penup()

def main():
setup(800, 600, 0, 0)
bgcolor((0.8, 0.8, 1.0))
tracer(False)
rainbow()
#输出文字
tracer(False)
goto(100,-100)
pendown()
color("red")
write("脚本之家",align="center",
  font=("Script MT Bold", 80, "bold"))
tracer(True)

mainloop()

if __name__ == "__main__":
main()

效果展示:

Python利用turtle库绘制彩虹代码示例

总结

起初在图片上添加中文“脚本之家”的时候,由于小编使用的是Python2.x,还发生了乱码,解决方法很简单,在代码前面添加一句

#-*- coding:utf-8 –*-

更详细办法参考:python中文乱码不着急,先看懂字节和字符

使用Python的turtle模块画图的方法

Python中turtle作图示例

Python内置模块turtle绘图详解

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

来源:http://blog.csdn.net/yangxing2/article/details/78637937

标签:python,turtle,实例
0
投稿

猜你喜欢

  • 微信小程序按钮点击动画效果的实现

    2023-08-26 03:22:21
  • ASP实现下载系统防盗链方法

    2008-02-01 14:05:00
  • javascript禁用Tab键脚本实例

    2023-10-13 10:53:58
  • Python中return函数返回值实例用法

    2023-11-19 02:11:36
  • 艺术和设计之间的差别

    2010-11-17 19:28:00
  • 按钮上的内容

    2007-11-27 00:13:00
  • 使用Javascript面向对象的思想编写ASP

    2008-06-16 12:20:00
  • Python的string模块中的Template类字符串模板用法

    2023-02-02 10:53:05
  • 分享13款非常有用的jQuery插件

    2011-05-16 19:07:00
  • 详解go语言json的使用技巧

    2023-09-12 10:27:48
  • SQL数据库操作类

    2009-01-14 16:26:00
  • python 利用文件锁单例执行脚本的方法

    2021-11-08 08:05:38
  • python实现从字典中删除元素的方法

    2023-11-10 17:26:33
  • js添加千分位的实现代码(超简单)

    2023-08-25 07:43:29
  • python+selenium实现12306模拟登录的步骤

    2021-06-18 15:32:56
  • python人工智能tensorflow常用激活函数Activation Functions

    2023-08-01 12:45:02
  • 让字体美起来

    2011-06-14 09:50:21
  • jQuery方法扩展:type, toJSON, evalJSON

    2009-02-15 12:42:00
  • python 打印出所有的对象/模块的属性(实例代码)

    2023-09-02 21:46:15
  • 关于基于字体大小(em)的设计

    2008-06-17 15:01:00
  • asp之家 网络编程 m.aspxhome.com