zoukankan      html  css  js  c++  java
  • python-turtle绘图

    一、绘图命令

    操纵海龟绘图有很多命令,可以划分为三种:画笔运动命令、画笔控制命令、全局控制命令

    画笔运动命令

    命令 说明
    turtle.forward(distance) 向当前画笔方向移动distance像素长度
    turtle.backward(distance) 向当前画笔相反方向移动distance像素长度
    turtle.right(degree) 顺时针移动degree°
    turtle.left(degree) 逆时针移动degree°
    turtle.pendown() 移动时绘制图形,缺少参数时也为绘制
    turtle.goto(x,y) 将画笔移动到坐标为(x,y)的位置
    turtle.penuo() 提起画笔,不绘制图形,用于另起一个地方绘制
    turtle.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
    setx() 将当前x轴移动到指定位置
    sety() 将当前y轴移动到指定位置
    setheading(angle) 设置当前朝向为angle的角度
    home() 设置当前画笔位置为原点,朝向向东 °

    画笔控制命令

    命令 说明
    turtle.fillcolor(colorstring) 绘制图形填充颜色
    turtle.color(color1, color2) 同时设置 pencolor = color1,fillcolor = color2
    turtle.filling() 返回当前是否在填充状态
    turtle.begin_fill() 准备开始填充图形
    turtle.end_fill() 填充完成
    turtle.hideturtle() 隐藏画笔的turtle形状
    turtle.showturtle() 显示画笔的turtle形状

    全局控制命令

    命令 说明
    turtle.clear() 清空turtle窗口,但是turtle的位置和状态不会发生变化
    turtle.reset() 清空窗口,重置turtle状态为起始状态
    turtle.undo() 撤销上一个turtle动作
    turtle.isvisible() 返回当前turtle是否可见
    stamp() 复制当前图形
    turtle.write(s[,font = ("font_name",font_size,"font_type")]) 写文本,s为文本内容,font是字体参数,分别是字体名称,字体大小和类型,font和font的参数都是可选选项

    案例

    案例一

    • 熟悉turtle坐标体系
    # 导入 turtle 模块 
    import turtle as t
    
    t.goto(100,100)
    t.goto(100,-100)
    t.goto(-100,-100)
    t.goto(-100,100)
    t.goto(0,0)
    t.done()
    

    案例二

    • 画笔自动绘图
    # 用for循环初步实现画笔自动绘图
    import turtle as t
    
    for i in range(20):
        # 画笔向前移动
        t.forward(100 + 10 * i)
        # 顺时针旋转120°
        t.right(120)
    t.done()
    

    案例三

    • 显示画笔运动印记
    # 用for循环初步实现画笔自动绘图并显示其印记
    import turtle as t
    
    for i in range(20):
        # 画笔向前移动
        t.forward(100 + 10 * i)
        #t.shape("turtle")  # 海龟
        #t.shape("circle")  # 圆
        t.shape("square")  # 正方形
        # 打印turtle印记
        t.stamp()
        # 顺时针旋转60°
        t.right(60)
    t.done()
    

    案例四

    • 画笔及填充控制
    # 绘制金光闪闪的太阳
    import turtle as t
    
    # 为小数时表示占据电脑屏幕的比例
    t.setup(width = 0.6, height = 0.6)
    # t.pencolor("red")
    t.color("red", "yellow")
    t.begin_fill()
    # 控制绘图时间
    t.speed(20)
    while True:
        t.forward(200)
        t.left(170)
        # print(t.pos())
        if abs(t.pos()) < 1:
            break
    t.end_fill()
    t.write("一颗金光闪闪的太阳", align = "right", font = ("Arial", 20, "normal"))
    t.done()
    

    案例五

    • 画圆形类的图
    # 粉色的爱心
    import turtle as t
    
    t.setup(800,800)
    t.speed(8)
    # 设置画笔大小
    t.pensize(10)
    t.hideturtle()
    t.pencolor("pink")
    t.left(45)
    t.forward(80)
    t.circle(35,210)
    t.right(150)
    t.circle(35,210)
    t.forward(80)
    t.done()
    

  • 相关阅读:
    Python+Selenium+PhantomJS下载JavaScript异步加载网页
    Java模拟post提交表单数据
    在nltk中调用stanfordparser处理中文
    Clustering text documents using k-means
    Classification of text documents: using a MLComp dataset
    Analyzing the Meaning of Sentences
    Identifying Dialogue Act Type
    jquery $.ajax()获取服务器上的json数据
    关于ie6中存在的最小的高度
    让两个元素水平对齐
  • 原文地址:https://www.cnblogs.com/L-hua/p/15412536.html
Copyright © 2011-2022 走看看