今天主要学习 3 个知识点,3 个指令。
三个知识点:
- 如何画不连续的图形?
- 如何画未知长度的直线?
- 如何快速画相同的图形?
三个指令:
a. penup() 抬笔
b. pendown() 落笔
c. goto(x, y) 移动到指定 坐标,不改变方向。
在我们画画和写字的时候,图案之间、笔画之间并不总是彼此相连,往往被分隔成多个部分,因此我们想要画画写字时,并不能做到 一笔ok,而是需要频繁的抬笔
以及落笔
,这样才能完成一幅图或者一个字。那么 turtle 库 中如何实现抬笔和落笔呢?
turtle 提供了两个指令: penup()
抬笔, pendown()
落笔。使用这两个指令 就可以画不相连的图形了。
两个点之间的未知关系可能有以下两种方式:
对于第一种,我们可以采用计算的方式。
对于第二种,我们可以采用尝试的方式或者采用 直接连线的方式。
采用 尝试 的方式,需要多次尝试。优点是:方便复制; 缺点是需要一定时间。
采用 直接连线 的方式,需要知道两个点的坐标。优点是:省时;缺点是:不方便复制。
在 turtle 中直接连线使用的是 goto(x, y)
指令。 直接从当前点移动到 坐标为 (x, y) 的点。不改变方向。
在我们的现实生活中,很多图形都是会包含多个相同的图案,或者相互对称。比如说国旗中的小五角星就是相同的图案,每个小五角星又是对称的。等等,还有很多的例子。
既然这些图案是相互对称的,并且又是相同的,那么是否有办法可以快速画出许多相同的图案呢?
能很快想到的办法就是 复制 啦,我们可以把相同的代码复制多份,就能画出多个相同的图案了。
在我们的编辑器中,在复制粘贴时,需要在 源代码 中进行。
在我们的编程界面中,有两种编程方式,一种是积木式,另一种的 源代码式。区别如图所示: