当前位置:   article > 正文

用python及turtle画n阶奇异三角形(顺带简单教下python库,画简单的图够用了)_python绘制奇异三角形

python绘制奇异三角形

turtle库看下面我写的一般来说就够了,挺简单的,重点是递归画图。

> turtle库需要下载,打开cmd,输入pip install turtle就可以安装了,下载慢的话可以看我那篇“安装scipy老是失败怎么办”博文。
> turtle.setup():设置一个相当于画板的东西。 
> turtle.penup():拿起画笔,防止设置起点时画笔移动产生“多于线条”。
> turtle.goto(x,y):重置画笔起点。 
> turtle.speed():设置画笔速度,设为0的话,即默认最大值。
> turtle.pensize():设置画笔粗细。
>  turtle.right(x):顺时针旋转x度。
> turtle.left(x):逆时针旋转x度。
>  turtle.fd(y):前进y像素。
> turtle.pendown():讲画笔放在画板上,此时用turtle.fd(y)会看见线条的移动及痕迹。
> turtle.pos():记录画笔位置。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

递归时注意,重置画笔坐标时,方向依然不变,需要自己修改。

import turtle as tt
def 奇异三角形(n,size):
    if n==0:
        for angle in [60,-120,-120]:
            tt.left(angle)
            tt.fd(size)
    else:
        pos=tt.pos()
        奇异三角形(n-1,size/2)
        tt.penup()
        tt.goto(pos) # 此时方向指向-x轴
        tt.right(120)
        tt.fd(size/2)
        tt.right(60)
        tt.pendown()
        奇异三角形(n-1,size/2)
        tt.penup()
        tt.goto(pos)
        tt.right(180)
        tt.fd(size/2)
        tt.pendown()
        奇异三角形(n-1,size/2)
tt.setup(1000,1000)
tt.penup()
tt.goto(-500,-200)
tt.pendown()
tt.speed(0)
tt.pensize(2)
奇异三角形(6,700)
tt.done()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

背景:在慕课上学python时,课后扩展的习题。

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/181457
推荐阅读
相关标签
  

闽ICP备14008679号