turtle图形艺术效果中隐含着很多随即元素,如随机颜色,尺寸,位置和数量等。因此在图形艺术绘制中需要引入随机函数库random。常用randint()函数生成指定范围内的随机数。

本实例选择“雪景”作为编程目标。

“雪景”图形艺术背景为黑色,分为上下两个区域,上方是漫天彩色雪花,下方是由远及近的灰色横线渐变。该图运用了随机元素,如雪花的位置·颜色·大小·花瓣数目·地面灰色线条长度·线条位置等,需要使用turtle库和random库。

绘制分为三个步骤

  1. 构建图的背景。定义上方雪花绘制函数drawSnow()和下方雪地绘制函数drawGround()
  2. 绘制雪花效果。 为体现艺术效果,drawSnow()函数首先隐藏turtle画笔,设置画笔大小,绘制速度,然后使用for循环绘制100朵雪花。为使雪花颜色随机,使用random()函数生成画笔颜色rgb值。这里采用turtle库默认0~1浮点数RGB取值。在指定区域随机选择坐标绘制雪花。
  3. 绘制雪地效果。drawGround()函数使用for循环绘制地面400道小横线,笔画大小,位置坐标,线段长度均通过randint()函数作为随机数产生。为使小横线的灰度呈现由远及近的效果,rgb值应根据坐标y进行变化。

“雪景”绘制在python窗体中,图形艺术程序往往动画时间较长,可以在主程序调用Tracer(False)函数关闭动画效果,达到一次性绘制所有效果。

from turtle import *
from random import *
def drawSnow():hideturtle()pensize(2)for i in range(100):r,g,b=random(),random(),random()pencolor(r,g,b)penup()setx(randint(-350,350))sety(randint(1,270))pendown()dens=randint(8,12)snowsize=randint(10,14)for j in range(dens):forward(snowsize)backward(snowsize)right(360/dens)def drawGround():hideturtle()for i in range(400):pensize(randint(5,10))x=randint(-400,350)y=randint(-280,-1)r,g,b=-y/280,-y/280,-y/280pencolor((r,g,b))penup()goto(x,y)pendown()forward(randint(40,100))
setup(800,600,200,200)
tracer(False)
bgcolor("black")
drawSnow()
drawGround()
done()

turtle库实例——雪景艺术绘图相关推荐

  1. Python+实例解析雪景艺术绘图

    本文章介绍python实例解析--雪景艺术绘图 turtle图形艺术,又称turtle艺术(turtle Art)指利用turtle库画笔创造性绘制徇丽多彩艺术图形的过程 turtle图形艺术效果中隐 ...

  2. python turtle 绘图小猪佩奇,Python使用turtle库绘制小猪佩奇(实例代码)

    这篇文章主要介绍了Python使用turtle库绘制小猪佩奇,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 turtle(海龟)是Python重要的标准库之一,它 ...

  3. python turtle循环图案-Python绘图Turtle库详解

    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行 ...

  4. python turtle库setpos_Python内置海龟(turtle)库绘图命令详解(二)

    继续谈利用海龟库(turtle库)做图.在这篇文章(Python内置海龟(turtle)库绘图命令详解(一))中已经介绍了turtle的一些基本画图命令,包括画布的设计.画笔属性与状态的设置以及画笔的 ...

  5. python樱花代码_使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例

    今天为大家介绍几个Python"装逼"实例代码,python绘制樱花.玫瑰.圣诞树代码实例,主要使用了turtle库 Python绘制樱花代码实例 动态生成樱花 效果图(这个是动态 ...

  6. python里自带的绘画库是_Python绘图Turtle库详解

    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行 ...

  7. 用python画圣诞树-使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例

    今天为大家介绍几个Python"装逼"实例代码,python绘制樱花.玫瑰.圣诞树代码实例,主要使用了turtle库 Python绘制樱花代码实例 动态生成樱花 效果图(这个是动态 ...

  8. Python绘图:turtle库基础语法介绍

    目录 一.turtle库的导入 二.绘图命令介绍 1.  画布属性设置 2.  画笔属性设置 3.  移动画笔和转角绘图 4.  图形绘制与图形填充 三.turtle绘图实例:绘制太阳花 Python ...

  9. python从入门到入魔第八天——turtle库使用(含玫瑰花绘制实例)

    turtle库的作用 python 提供画图工具标准库:turtle库包绘图坐标体系.画笔控制函数和形状绘制函数,用来绘制想要的图画,turtle库的调用方式参考Python从入门到入魔第五天--ji ...

最新文章

  1. CSDN湘苗培优,遇见更好的自己
  2. PTA 基础编程题目集 7-7 12-24小时制 C语言
  3. nodejs 截断字符串_node.js – nodejs:字符串操作
  4. Android 10.0 系统服务之ActivityMnagerService-AMS启动流程-[Android取经之路]
  5. vs2015 x86 opencv3.3(编译)
  6. MapReduce with MongoDB and Python[ZT]
  7. 链式栈的初始化,判空,进栈,出栈,求长,求顶,打印,清空和销毁
  8. python本地镜像源搭建_【Python】pip配置国内镜像源,让Python模块安装飞起来。
  9. c++函数模板和类模板
  10. Java中的ThreadPoolExecutor类
  11. 无心剑随感《译诗但求达意传神》
  12. ORA-01552 :非系统表空间 'xxxx'不能使用系统回退段
  13. 隐马尔可夫模型,最大熵马尔可夫模型和条件随机场的区别与联系
  14. 九度OJ-1112-导弹拦截-最长不增子序列
  15. a标签传值乱码问题怎么解?
  16. android分享数据到不同平台组件化
  17. [ExtJS5学习笔记]第22 Extjs5正在使用beforeLabelTpl添加所需的配置选项标注星号标记...
  18. 软件工程之软件维护与再工程
  19. **冠图DWG图纸加密个人版**
  20. Unity WebGL基于js通信实现网页录音

热门文章

  1. 解一元二次方程 matlab,如何用Matlab求一元二次方程式解的个数以及解
  2. 【Android】安卓AVD无法上网解决方案
  3. 腾讯云开发低代码-会员管理系统
  4. 记一次白帽子媳妇儿被诈骗后并成功抓获骗子
  5. 上海开放大学大学英语计分作业二答案
  6. java数组长度为0和数组为null
  7. 江西省新余高新区与建行新余市分行签订战略合作协议
  8. 通过socket数据报传输消息
  9. 如何结交大佬 -- 舔狗是要技术的
  10. Simulink模型颜色快速设置