还记得画正方形的代码吗? 我们来复习一下!

import turtlet = turtle.Pen()for i in range(4):    t.forward(100)    t.right(90)


import turtle的作用是导入turtle库供我们使用,在turtle库中有很多的命令帮助来画图。 使用t = turtle.Pen()来新建一只画笔,取名字叫t。 使用for循环来重复以下动作四次:

  • 前进 100
  • 右转 90度


这样我们就创作出了一个正方形!

opencv python 画旋转矩形框_for循环


接下来让我们做一个小小的实验!把重复次数改成100?

import turtlet = turtle.Pen()for i in range(100):    t.forward(100)    t.right(90)
import turtle
t = turtle.Pen()

for i in range(100):
    t.forward(100)
    t.right(90)


猜猜会发生什么?恭喜你!你收获了一个疯狂的正方形!

opencv python 画旋转矩形框_Python_02


如果再改动一下呢? 我们把 t.right(90)改成t.right(90 + 1)

来试一试!

import turtlet = turtle.Pen()for i in range(100):    t.forward(100)    t.right(90 + 1)



opencv python 画旋转矩形框_python turtle绕原点旋转_03


正方形旋转起来了!这是为什么呢? 想象一下: t.right(90+1)让箭头每次的转向多1度,慢慢的每个正方形都会向右偏移一度,就造成了这样的效果。

你可以试试改变t.right()中的角度,看看会有什么效果? 绘制螺旋?

我们还可以做一些什么改动? 让我们看看如何在循环上能够做一些什么手脚? 首先试一试这样的代码:

import turtlet = turtle.Pen()t.speed(1)t.forward(0)t.right(90)t.forward(5)t.right(90)t.forward(10)t.right(90)t.forward(15)t.right(90)t.forward(20)t.right(90)t.forward(25)t.right(90)t.forward(30)t.right(90)t.forward(35)t.right(90)t.forward(40)t.right(90)t.forward(45)t.right(90)


哇!看起来好长! 那么实际是什么效果呢?

opencv python 画旋转矩形框_for循环_04


出现了一个正方形的螺旋! 这是为什么呢?我们每次都让画笔t向前移动的距离增大了5,最终会得到一个不断扩大的正方形。 那么问题来了! 这样写代码太麻烦,想要画出来好看的代码也要很多行,那么有什么办法能够帮助我们呢? 试试这样的代码!

import turtlet = turtle.Pen()t.speed(0)for i in range(100):    t.forward(5 * i)    t.right(90)
import turtle
t = turtle.Pen()
t.speed(0)

for i in range(100):
    t.forward(5 * i)
    t.right(90)



opencv python 画旋转矩形框_python turtle绕原点旋转_05


看到了吗! 很轻松的就画出来了一个正方形螺旋,这多亏了我们的for循环! for循环可以让内部的代码不断的重复,同时for i in range(100)中的i会从0开始逐渐增大!

比如: for  i in range(100)   中i的值会从0开始,每次循环增加1,最终为99

for i in range(50)      中i的值会从0开始,每次循环增加1,最终为49

现在我们有了两个新的技能:

  1. 更改旋转的角度
  2. 更改循环中每次移动的距离


你可以试一试改变数字,尝试画出来一些不一样的图形! 多彩螺旋?

到了创作时刻啦! 黑白的图案总是不好看的,因此我们需要一些彩色! 你可以使用 t.color('green')

来设置颜色!

import turtlet = turtle.Pen()t.speed(0) #用于改变画笔的速度t.color('green')for i in range(100):    t.forward(5 * i)    t.right(90)
import turtle
t = turtle.Pen()
t.speed(0) #用于改变画笔的速度

t.color('green')

for i in range(100):
    t.forward(5 * i)
    t.right(90)



opencv python 画旋转矩形框_python螺旋圆的绘制_06


也可以使用 t.color(220,120,180)

来设定颜色!

import turtlet = turtle.Pen()t.speed(0)turtle.colormode(255)t.color(220,120,180)for i in range(100):    t.forward(5 * i)    t.right(90)
import turtle
t = turtle.Pen()
t.speed(0)
turtle.colormode(255)
t.color(220,120,180)

for i in range(100):
    t.forward(5 * i)
    t.right(90)



opencv python 画旋转矩形框_python螺旋圆的绘制_07


我们来着重介绍一下第二种方法! 相比第一种提供颜色的方法来说,第二种提供的是 光学三基色:红 绿 蓝

光学三基色被广泛的运用在我们的生活中,举个最简单的例子:各种屏幕上就会使用这三种颜色得到想要显示的各种颜色。

opencv python 画旋转矩形框_python turtle绕原点旋转_08


光学三基色我们可以按照他们的顺序来起个英文名字:RGB,分别代表了红色,绿色和蓝色。通过不同强度的光照就可以组合成我们想要的颜色啦! 你可以使用t.color(红色强度,绿色强度,蓝色强度)来指定自己想要实现的颜色,不过记住: 每种颜色的数值都只有 0 - 255

个级别,如果你代码中超过了255这个数字,程序会报错哦!这里有一些案例哦,你也可以试试!

import turtlet = turtle.Pen()t.speed(0)turtle.colormode(255) # 切换使用RGB色彩颜色t.color(220,120,180)for i in range(100):    t.forward(5 * i)    t.right(120)    t.forward(2 * i)    t.left(30)

opencv python 画旋转矩形框_Python_09

(粉色的忍者镖?)

import turtlet = turtle.Pen()t.speed(0)turtle.colormode(255)t.color(90,120,180)for i in range(100):    t.forward(i)    t.left(30)    t.forward(i)    t.left(20)    t.forward(i)    t.right(75)

opencv python 画旋转矩形框_Python_10