美文网首页技术学习
python turtle画心

python turtle画心

作者: Waisam | 来源:发表于2018-12-01 17:44 被阅读208次

    Turtle Graphics是python内置的画图工具,使用import turtle即可使用。
    和一般画图工具一样,turtle也有画布和画笔等基本要素。

    画布

    画布是turtle的绘图区域, 我们可以设置它的初始位置及大小。

    命令 说明
    turtle.screensize(canvwidth=None, canvheight=None, bg=None) 设置画布宽度、高度及背景颜色

    画笔

    (1)画笔控制命令

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

    (2) 画笔运动命令

    命令 说明
    turtle.forward(distance) 向当前画笔方向移动distance像素长度
    turtle.backward(distance) 向当前画笔相反方向移动distance像素长度
    turtle.right(degree) 顺时针移动degree度
    turtle.left(degree) 逆时针移动degree度
    turtle.pendown() 移动时绘制图形,缺省时为绘制
    turtle.penup() 提起笔,移动时不绘制图形
    turtle.goto(x,y) 将画笔移动到坐标为x,y的
    turtle.circle() 画圆,半径为正(负)表示圆心在画笔的左(右)边画圆

    (3) 全局控制命令

    命令 说明
    turtle.clear() 清空turtle窗口
    turtle.reset() 清空turtle窗口,重置turtle为初始状态
    turtle.undo() 撤销上一个turtle操作
    turtle.isvisible() 返回当前turtle是否可见
    turtle.stamp() 复制当前图形
    turtle.write(s, font) 写文本,s为文本内容,font是字体参数

    (4)命令详解

    turtle.circle(radius, extent=None, steps=None)

    描述: 以给定半径画圆
    参数:
    -radius(半径),半径为正(负)表示圆心在画笔的左边(右边)画圆
    -extent(弧度) ,可选;
    -steps (多边形边数), 画半径为radius的圆的内切正多边形;

    举例:
    circle(50) # 整圆;
    circle(50,steps=3) # 三角形;
    circle(120, 180) # 半圆

    绘画示例

    画心

    基本示例代码如下:

    import turtle
    import time
    
    # 曲线移动
    def curveMove():
        for i in range(200):
            turtle.right(1)
            turtle.forward(1)
    
    
    def drawHeart():
        turtle.speed(10) # 画笔速度调到最高
        turtle.color('red','pink')
        turtle.begin_fill()
        turtle.left(140) # 逆时针旋转140度
        turtle.forward(111.65) # 向前移动111.65个像素
        curveMove() # 画曲线
        turtle.left(120) # 逆时针旋转120度
        curveMove() # 继续画曲线
        turtle.forward(111.65) # 向前移动111.65个像素
        turtle.end_fill()
        time.sleep(10)
    
    if __name__ == '__main__':
        drawHeart()
    

    最终效果图如下所示:


    image.png

    相关文章

      网友评论

        本文标题:python turtle画心

        本文链接:https://www.haomeiwen.com/subject/cxrrcqtx.html