zoukankan      html  css  js  c++  java
  • python中的turtle库绘制图形

    1. 前奏:

    在用turtle绘制图形时,需要安装对应python的解释器以及IDE,我安装的是pycharm,在安装完pycharm后,在pycharm安装相应库的模块,绘图可以引入turtle模块,想要进行运算可以引入numpy模块。
    需要注意: 在pycharm 中 turtle 是不支持提示的,可能是动态语言的一种毛病吧
    turtle绘图常用的函数有:

    : 操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令
    (1)画笔运动命令:
    命令 说明
    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.penup() 移动时不绘制图形,提起笔,用于另起一个地方绘制时用
    turtle.speed(speed) 画笔绘制的速度范围[0,10]整数
    turtle.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
    (2)画笔控制命令:
    命令 说明
    turtle.pensize(width) 绘制图形时的宽度
    turtle.pencolor() 画笔颜色
    turtle.fillcolor(colorstring) 绘制图形的填充颜色
    turtle.color(color1, color2) 同时设置pencolor=color1, fillcolor=color2
    turtle.filling() 返回当前是否在填充状态
    turtle.begin_fill() 准备开始填充图形
    turtle.end_fill() 填充完成;
    turtle.hideturtle() 隐藏箭头显示;
    turtle.showturtle() 与hideturtle()函数对应
    (3) 全局控制命令
    命令 说明
    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的参数也是可选项

    2. 需要说明的

    (1): 在画布上,默认有一个坐标原点为画布中心的坐标轴, 坐标原点上有一只面朝x轴正方向小乌龟. 这里我们描述小乌龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向), turtle绘图中, 就是使用位置方向描述小乌龟(画笔)的状态 这个命令就是goto();
    (2): turtle.circle(radius, extent=None, steps=None)描述: 以给定半径画圆
    参数:
    radius(半径); 半径为正(负),表示圆心在画笔的左边(右边)画圆
    extent(弧度) (optional);
    steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps)
    举例:
    circle(50) # 整圆;
    circle(50,steps=3) # 三角形;
    circle(120, 180) # 半圆
    (3) 填充 start_fill() end_fill()
    参数为空 表示在一个画笔运动状态结束的时候,填充的内容颜色

    3.具体例子:

    绘制一个正方形

    4.绘制 五角星

    1. 绘制java 咖啡
  • 相关阅读:
    arm-linux-gcc-4.5.1的安装…
    OK6410之tftp下载内核,nfs…
    非常详细的ok6410的linux系统移植…
    2009-2010网络最热的 嵌入式…
    Vue-基础(二)
    【SpringBoot】Springboot1.5.9整合WebSocket
    Hadoop本地环境安装
    Vue-基础(一)
    【Jwt】JSON Web Token
    【JDK8】Java8 新增BASE64加解密API
  • 原文地址:https://www.cnblogs.com/dgwblog/p/8734933.html
Copyright © 2011-2022 走看看