zoukankan      html  css  js  c++  java
  • turtle绘制图形

    Example1:

    1 import turtle as t
    2 #初始设置画笔的宽度(size)、颜色(color)
    3 t.pensize(5)
    4 t.pencolor("black")
    5 #循环结构,减少代码
    6 for i in range(4):
    7     t.forward(200)
    8     t.left(90)

    Example2:

    方法一:把上面绘制四边形的代码:行6中的4改为6即可

    #方法二
    import turtle as t
    t.pensize(5)
    t.pencolor("black")
    t.right(30)
    t.circle(100,steps=6)
    #下面是绘制该六边形的外接圆
    t.pencolor("red")
    t.circle(100)

    结果:

    所绘制出来的六边形与题目要求的不一样的原因:用turtle.circle(r,steps=n)绘制正n多边形的时候,其“半径”默认是“海龟”视角下的正左边,即以“海龟”为原点,它头的朝向为x轴正方向,圆心在与它垂直的左边,所以绘制正n多边形跟绘制它的外接圆是一样的

    先改变朝向,在绘制即可:

     

    Example3:

     1 import turtle as t
     2 t.pensize(5)
     3 t.pencolor("black")
     4 for i in range(4):
     5     t.forward(150)  
     6     t.right(90)
     7     t.circle(-150,45)
     8     t.right(90)
     9     t.forward(150)
    10     t.left(135)

    Conclusions:

      对于规则且重复的图像,建议用“相对移动”函数:forward()backward()和“相对角度”函数:right()left(),因为这样便于用for循环。如果用“绝对移动”函数:goto()和“绝对角度”函数:setheading(),则无法用循环,每次改变位置或角度都要修改参数,比较麻烦

  • 相关阅读:
    vue 父子组件传参
    vue中引入swiper(vue中的滑块组件vue-awesome-swiper)
    border-radius值的解析
    chrome开发工具指南(十四)
    chrome开发工具指南(十三)
    Python动态强类型解释型语言
    go基础 01
    代码发布 04
    代码发布03
    代码发布02
  • 原文地址:https://www.cnblogs.com/kenny-feng/p/11321846.html
Copyright © 2011-2022 走看看