前些天说到基础入门教程的时候,我们画了多边形,今天写一个简单点的教程,我们基于多边形做一个彩色色阶的蜘蛛网。

回顾下多边形和彩色多边形

多边形

直接贴代码,细节找旧文看。

def draw_gon(length, line):angle = 360//linefor index in range(line):turtle.goto(0, 0)turtle.pendown()turtle.seth(angle*index)turtle.fd(length)(x,y)=turtle.pos()turtle.penup()turtle.goto(0, 0)turtle.pendown()turtle.seth(angle*(index+1))turtle.fd(length)turtle.goto(x,y)turtle.penup()

五边形

六边形

360边形

彩色多边形

直接贴代码,细节找旧文看。

def draw_gon(length, start_angle, line):angle = 360//linefor index in range(line):(r,g,b) = colorsys.hsv_to_rgb(index/line,1,1)turtle.color((r,g,b))turtle.goto(0, 0)turtle.begin_fill()        turtle.pendown()turtle.seth(start_angle + angle*index)turtle.fd(length)(x,y)=turtle.pos()turtle.penup()turtle.goto(0, 0)turtle.pendown()turtle.seth(start_angle+angle*(index+1))turtle.fd(length)turtle.goto(x,y)turtle.penup()turtle.end_fill()

彩色五边形示例:

彩色五边形

彩色360边形

彩色色阶蛛网

想要画一个彩色色阶的蛛网,需要解决2个数学问题:

  1. 蛛网和多边形是什么关系?

  2. 彩色色阶的循环如何实现?

先来说第1个问题,其实很简单,不同边长的多边形嵌套形成的就是蛛网。

如下图:

蛛网

再来说第2个问题,看下面的图:

蛛网色阶原理

因为是纵向的色阶,那么:

1、2、3、4连环色,5、6、7、8连环色,9、10、11、12连环色,13、14、15、16连环色 ···

基于此,有两种实现方式:

  • 方式一:按1、2、3、4、5的顺序画三角形,色阶自然顺序。

  • 方式二:按1、5、9、13的顺序画三角形,色阶跳跃处理。

由于前面写的draw_gon函数是按方式二实现的,我们就按第二个方式实现。

def draw_gon(length, start_angle, line, color_start, color_step):angle = 360//linefor index in range(line):(r,g,b) = colorsys.hsv_to_rgb((index+color_start+color_step)/line,1,1)turtle.color((r,g,b))turtle.goto(0, 0)turtle.begin_fill()        turtle.pendown()turtle.seth(start_angle + angle*index)turtle.fd(length)(x,y)=turtle.pos()turtle.penup()turtle.goto(0, 0)turtle.pendown()turtle.seth(start_angle+angle*(index+1))turtle.fd(length)turtle.goto(x,y)turtle.penup()turtle.end_fill()

效果图:

蛛网色阶原理

python与分形0017 - 【教程】彩色色阶蛛网相关推荐

  1. python绘制分形图形教程_Python教程之绘制Mandelbrot集合

    原标题:Python教程之绘制Mandelbrot集合 一. 分形与混沌 自然界的很多事物,如树木.云彩.山脉.雪花.海岸线等,都呈现出传统几何学所不能描述的形状,这些形状都有如下的特性: 有着十分精 ...

  2. python绘制分形图形教程_#python绘制分形图形教程#如何用Python绘制Circos图

    用Python实现Circos图的在线绘制的Circos有局限性,如对数据的要求.个性局限理速度等的问题,但如果你是一个Pythoneer或者喜欢用更加Pythonic的方式来个性化地绘制Circos ...

  3. python绘制分形图形教程_python-图形绘制(1)-turtle-递归-分形几何美学-分形树

    分形几何美学:客观事物具有自相似的层级结构,局部与整体在形态.功能.信息.时间.空间等方面具有统计意义上的相似性,称为自相似性.自相似性指局部是整体成比例缩小的性质. 分形树 单根树 所有的分形树是由 ...

  4. Python 数据科学入门教程:OpenCV

    图像和视频分析 原文:Images and Video Analysis 译者:飞龙 协议:CC BY-NC-SA 4.0 一.Python OpenCV 入门 欢迎阅读系列教程,内容涵盖 OpenC ...

  5. Blender中的Python脚本介绍学习教程

    Blender中的Python脚本介绍学习教程 MP4 |视频:h264,1280×720 |音频:AAC,48000 Hz 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:1.63 ...

  6. 分享一个python cookbook的在线教程地址

    分享一个python cookbook的在线教程地址: http://python3-cookbook.readthedocs.org/zh_CN/latest/ 翻译者:熊能 转载于:https:/ ...

  7. python商业爬虫教程_廖雪峰老师的Python商业爬虫课程 Python网络爬虫实战教程 体会不一样的Python爬虫课程...

    廖雪峰老师的Python商业爬虫课程 Python网络爬虫实战教程 体会不一样的Python爬虫课程 1.JPG (53.51 KB, 下载次数: 1) 2019-8-9 08:15 上传 2.JPG ...

  8. scrapy爬虫储存到mysql_详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库

    获取要爬取的URL 爬虫前期工作 用Pycharm打开项目开始写爬虫文件 字段文件items # Define here the models for your scraped items # # S ...

  9. python是什么编程教程-Python 从不懂到入门

    基础知识 什么是编程语言 可以简单的理解为一种计算机和人都能识别的语言 什么是 Python 一种编程语言 安装 Python 开发环境 何为开发环境 简单理解为运行 Python 的平台 去 Pyt ...

最新文章

  1. volatile 和 sig_atomic_tlinux
  2. 什么是mysql分发版_MySQL:使用源码分发版还是二进制分发版
  3. Layout动画:在android布局发生变化时添加动画效果
  4. 【典型错误】The type java.lang.Object cannot be resolved.
  5. 【java机器学习】贝叶斯分类
  6. 读《程序是怎样跑起来的》第三章有感
  7. 使用Struts2 验证框架,验证信息重复多次出现
  8. C 库函数 - atoi() 字符串中的数字转换为一个整型
  9. Arcgis javascript那些事儿(十五)——影像服务的发布与使用
  10. 【线程安全】—— 单例类双重检查加锁(double-checked locking)
  11. 朴素的UNIX之-进程/线程模型
  12. mysql字符串拼接有空值_mysql字符串如何拼接并设置null值 mysql字符串拼接并设置null值实例方法...
  13. AI能写论文了!华人本科生发明AI论文生成器
  14. pytorch中tensor.topk
  15. ubuntu 安装 xv 图像查看软件
  16. 继电器驱动电路(各种单片机、CD4013触发器驱动电路图)
  17. ArcGIS配图/地图符号化的一些技巧与相关资料
  18. 黑鲨3能升级鸿蒙5g吗,配上高通骁龙865 5G芯片的黑鲨游戏手机3,到底有多懂手游玩家!...
  19. Modelarts培训第一次
  20. 第一周-2.3成绩排序

热门文章

  1. 如何编制试算平衡表_在实际工作中,余额试算平衡通过编制试算平衡表进行。()...
  2. 【微信小程序】几个常用小功能
  3. 游戏攻略 Re:LieF ~親愛なるあなたへ~ (relief给挚爱的你)
  4. 智能客服话术设计思路
  5. 移远通信亮相CCBN2021,助推视听媒体等领域不断创新
  6. android 4.4.4最新微信,微信旧版本安卓4.4.4可用
  7. python 字符串前面加 u, r, b的含义
  8. 大病众筹平台会成为下一个“网络诈骗”工具吗?
  9. 佩奇:产品经理要一个佩奇,不知道啥是佩奇的开发该怎么办?
  10. Windows 内网渗透之攻击域控