2.3 turtle 库的使用(海龟绘图法) | Python语言程序设计(嵩天)


课程简介

计算机是运算工具,更是创新平台,高效有趣地利用计算机需要更简洁实用的编程语言。Python简洁却强大、简单却专业,它是当今世界最受欢迎的编程语言,学好它终身受用。请跟随我们,学习并掌握Python语言,一起动起来,站在风口、享受创新!
—— 课程团队

在这里插入图片描述


MOOC课程:
Python语言程序设计(嵩天 、黄天羽 、礼欣)
北京理工大学

课程视频地址:

课程视频-B站

授课目标:

本课程适合如下教学目标:

  • 程序设计入门课:面向各层次各专业大学在校生、部分优秀高中生,作为程序设计入门课程
  • 体系化编程基础:面向拟构建坚实编程能力的自学者,作为不断奋斗的参考在线课程
  • Python科目备考:面向全国计算机等级考试二级Python科目的备考考生,作为在线备考资源
  • 再试一次的尝试:面向拟放弃计算机或编程学习的学习者,作为再试一次的课程资源,学不会这门课学再放弃不迟…

第二章 Python基本图形绘制


2.3 turtle 库的使用(海龟绘图法)


概要

  • turtle库基本介绍
  • turtle绘图窗体布局
  • turtle空间坐标体系
  • turtle角度坐标体系
  • RGB色彩体系

turtle库基本介绍

turtle(海龟)库是turtle绘图体系的Python实现
Turtle库是Python语言中的一个绘图函数库,想象一只小乌龟,它会随着代码的控制在屏幕上移动,并在它爬行的路径上绘制出图形。

  • turtle绘图体系:1969年诞生,主要用于程序设计入门的绘图方式
  • Python语言的标准库之一
  • 入门级的图形绘制函数库

Python计算生态 = 标准库 + 第三方库
Python语言的计算生态包含标准库第三方库

  • 标准库:随解释器直接安装到操作系统中的功能模块
  • 第三方库:需要经过安装才能使用的功能模块
  • 注意:库Library、包Package、模块Module,在本套课程中都统称为模块。

turtle绘图窗体布局

turtle绘图窗体布局:turtle的画布空间,最小单位是像素

在这里插入图片描述

屏幕坐标系:屏幕左上角坐标为(0, 0)

画布是用于绘图的区域窗体,可使用函数 turtle.setup()调整绘图窗体在电脑屏幕中的大小和窗体左上角与屏幕左上角的相对位置

turtle.setup(width, height, startx, starty)
turtle.setup(宽度,高度,窗口起始横坐标,窗口起始纵坐标)

  • 参数:
    width, height: 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例,

  • 可选参数:
    startx, starty: 起始点坐标。指窗体左上角顶点位置的坐标(相对位置坐标),即左上角位置相对于屏幕的左上角的坐标。若这两个可选的参数不填,则默认窗口在屏幕中间。

turtle.setup()非必要函数,仅用来控制窗体大小,以及窗体在屏幕中的位置。


# 窗体位于屏幕左上角,宽800 高400
turtle.setup(800, 400, 0, 0)

# (默认位置)窗体位于屏幕正中间,宽800 高400
turtle.setup(800, 400)

代码效果:

在这里插入图片描述


turtle空间坐标体系

绝对坐标 & 海龟坐标
画布上以中心为原点的空间坐标系

在这里插入图片描述

绝对坐标

  • 海龟最开始在屏幕的正中央,即坐标 (0, 0) 的位置。
  • 海龟的行进方向默认是向着画布的右侧,即整个窗体的右方向是 x x x 轴,上方向是 y y y 轴。
  • 选取4个点,根据坐标和位置的不同,有不同的坐标值:(-100, 100) (100, 100) (-100, -100) (100, -100)
    这个坐标值,指海龟绘制过程中,画布(窗体)中间的空间坐标体系(常用),区别于窗体在屏幕中间的位置坐标。
  • 使用函数 turtle.goto(x,y) 利用空间坐标改变小海龟的行进位置:
    让无论处于什么位置的小海龟,直接去到坐标为(x, y)的位置。

例如:


import turtle
turtle.goto(100,100)
turtle.goto(100,-100)
turtle.goto(-100,-100)
turtle.goto(-100,100)
turtle.goto(0,0)

运行结果:

在这里插入图片描述


海龟坐标

  • 海龟的当前行进方向无论是朝向哪个角度,都叫前进方向,反方向则为后退方向
    注意,海龟起始的行进方向默认是向右
  • 海龟的当前行进方向左侧叫左侧方向,右侧叫右侧方向

在这里插入图片描述

在这里插入图片描述

turtle.fd(d) 或 turtle.forward(d)
向海龟的正前方行进长度为d像素的距离

turtle.bk(d)或 turtle.backward
向海龟的反方向行进长度为d像素的距离

turtle.circle(r, angle)
曲线运行,默认以海龟当前位置左侧距离为r像素的点为圆心,行进angle角度的弧线


turtle角度坐标体系

turtle角度坐标体系:绝对角度 & 海龟角度
画布上以空间 x x x 轴为 0 度的角度坐标体系


绝对角度

在空间坐标中,海龟运行的方向也有一个绝对角度。
x x x 轴表示 0 度或 360 度,
y y y 轴表示 90 度或 -270 度。

在这里插入图片描述

在这里插入图片描述

turtle.seth(angle)turtle.sethead(angle)
改变当前海龟前进方向为angle角度,只转动方向,不行进


海龟角度

使用左、右的方式来改变海龟的运行角度。

在这里插入图片描述

turtle.left(angle)
让当前海龟左转angle角度,改变前进方向

turtle.right(angle)
让当前海龟右转angle角度,改变前进方向

例:绘制一个Z形曲线


import turtle
turtle.left(45)
turtle.fd(150)
turtle.right(135)
turtle.fd(300)
turtle.left(135)
turtle.fd(150)

运行结果:

在这里插入图片描述


RGB色彩体系

RGB
计算机最常用的色彩体系

由三种颜色构成的万物色:Red, Green, Blue.

  • RGB指由红、绿、蓝三种颜色通道构成的色彩组合
  • RGB几乎覆盖了视力所能感知的所有颜色
  • RGB每个颜色通道的取值范围为 0-255 的整数,或 0-1 之间的小数

常用的RGB色彩( 整数值&小数值

英文名称RGB整数值RGB小数值中文名称
white255, 255, 2551, 1, 1白色
yellow255, 255, 01, 1, 0黄色
magenta255, 0, 2551, 0, 1洋红
cyan0, 255, 2550, 1, 1青色
blue0, 0, 2550, 0, 1蓝色
black0, 0, 00, 0, 0黑色
seashell255, 245, 2381, 0.96,0.93海贝色
gold255, 215, 01, 0.84, 0金色
pink255, 192, 2031, 0.75, 0.80粉红色
brown165, 42, 420.65, 0.16, 0.16棕色
purple160, 32, 2400.63, 0.13, 0.94紫色
tomato255, 99, 711, 0.39, 0.28番茄色

模式切换
turtle库默认采用RGB的小数值来表示颜色,可用以下函数切换为整数值或小数值:
turtle.colormode(mode)

参数 mode 的取值为:

  • 1.0 RGB小数模式
    如:turtle.colormode(1.0)

  • 255 RGB整数模式
    如:turtle.colormode(255)


内容小结

  • turtle库的海龟绘图法
  • turtle.setup()调整绘图窗体在电脑屏幕中的布局
  • 画布上以中心为原点的空间坐标系:绝对坐标&海龟坐标
  • 画布上以空间x轴为0度的角度坐标系:绝对角度&海龟角度
  • RGB色彩体系,整数值&小数值,色彩模式切换


版权说明

1.4bqsm

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰.封万里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值