python之turtle简单绘制学习
一、方法
1.forward() | fd():向前移动指定的距离。参数:一个数字(integer or float))。
turtle.forward(25)
2.backward() | bk() | back():向后移动指定的距离。参数:一个数字(integer or float))。
turtle.backward(30)
3..right() | rt():以角度单位向右转动。参数:一个数字(integer or float))。单位默认为度数,可以通过degrees()和radians()进行设置。
turtle.right(45)
4.left() | lt():以角度单位向左转动。参数:一个数字(integer or float))。单位默认为度数,可以通过degrees()和radians()进行设置。
turtle.left(45)
5.goto() | steps() | setposition():移动到绝对位置,如果笔落下,画线,不改变方向。参数:x-一个数字或一对数字。y-一个数字或None。
turtle.setpos(60,30)
#(60.00,30.00)
6.setx():设置第一个坐标的值即X方向。参数:一个数字(integer or float))。
turtle.setx(10)
#(10.00,0.00)
7.sety():设置第二个坐标的值即Y方向。参数:一个数字(integer or float))。
turtle.sety(10)
#(0.00,10.00)
8.setheading() | seth(): 将方向设置为to_angle.就是东西南北方向。具体如下:
标准模式standard (逆时针):0 - 东 ,90 - 北 ,180 - 西 ,270 - 南
标志模式logo (顺时针):0- 北 , 90- 东 ,180- 南 , 270 - 西
turtle.seth(90)
y“logo”时
^
|
|
|
(0,0)——————> x“standard”时
# 例如:
# “standard”模式时角度为逆时针,所以90度表示向北;logo”模式时角度为顺时针,所以90度表示向东
turtle.setheading(90)
9.home() : 将位置和方向恢复到初始状态,位置初始坐标为(0,0),方向初始为("standard"模式为right向右即东,"logo"模式是up向上即北)
turtle.home()
# (0.00,0.00)
10. turtle.circle(radius, extent=None, steps=None): 按给定的半径画圆,当前位置为圆的初始端点
解释:
radius(a number,圆半径,为正数则逆时针画,为负数则顺时针画,方向随着轨迹的变化而变化)
extent(a number or None,一个角度,决定哪部分圆圈被绘制,不提供extent表示画完整的圆)
steps(an integer or None,指定半径radius前提下,完成extent的角度时,分了几步,如画正5边形时turtle.circle(40, None, 5))
例如
turtle.home()
# 当前位置(0,0)开始逆时针画半径为30的圆
turtle.circle(30)
# 逆时针画半径为50的半圆
turtle.circle(50, 180)
# 方向值为180,“standard”模式时方向向左,“logo”模式方向向下
print(turtle.heading())
turtle.circle(-50, 180)
print(turtle.heading())
# 逆时针方向半径为40画五边形(5步画接近整圆的图形)
turtle.circle(40, None, 5)
11.dot() :用颜色画出一个直径大小的圆点。参数:size-一个大于1的整数,可None。默认用的是pensize+4和2*pensize的最大值,color-颜色值
turtle.dot(20, "blue")
12.stamp():将当前位置上的形状复制到画布上返回stamp_id.可以调用,可以删除。
turtle.stamp()
13.clearstamp():删除stamp()返回来的值。参数:stampid。
14.clearstamps():删除全部stamp()的值。参数:stampid。
15.undo():撤销最后的动作。
16.speed():将速度设置为0..10范围内整数。如果没有参数,则返回当前速度。如果大于10或者小于0.5,则速度设置为0 。
“最快”:0 :直接成图,没有动画效果
“快”:10:大概一秒
“正常”:6:
“慢”:3
“最慢”:1
17:position() | pos(): 返回当前的位置。
turtle.pos()
# (0.00,0.00)
18.towards(): 返回当前位置同指定位置之间的角度。参数:x-一个数字或一对数字或一个实例的向量,y-如果x是数字,则为数字,否则为None。
turtle.goto(10,10)
tw = turtle.towards(0,0)
print(tw)
# 225
19.xcor():返回x坐标。
ycor():返回y坐标。
20.heading(): 返回当前的方向值。
21.distance():返回x,y两个点的直线距离
22.degrees():设置一整圈的度数。默认是360度。
23.radians():将角度测量单位设置为弧度。相当于 degrees(2*math.pi)
24.pendown() | pd() | down():放下笔,移动的时候绘图。
25.penup() | pu() | up():将提起笔,移动时无图。
26.pensize():设置线条的粗细。参数:width-一个正数
27.pen():使用键值对设置笔的属性:
“shown”: True/False
“pendown”: True/False
“pencolor”: 颜色字符串或者颜色值
“fillcolor”: 颜色字符串或者颜色值
“pensize”: 正数
“speed”: 速度范围为0..10的数字
“resizemode”: “auto” or “user” or “noresize”
“stretchfactor”: (positive number, positive number)
“outline”: 正数
“tilt”: 正数
28.isdown():如果笔停止返回True,反之False
29.pencolor():设置笔的颜色。
30.fillcolor():笔的填充色。
31.color():同时设置pencolor和fillcolor
32.filling():返回fillstate状态,如果填充则返回True,反之False。
33.begin_fill():在绘制要填充的形状前调用。当然在调用完还需要end_fill()。
34.reset():重置,将屏幕中的图纸删除,重新居中并将所有变量设置为默认值。
35.clear():删除图纸。对属性不做操作。
36.write():写文本。参数:arg-要写入的对象。move-是否移动。align-对齐方式:left,right,center。font-字体。fontname,fontsize,fonttype。
37.hideturtle() | ht() :删隐藏乌龟的形状,在做复杂绘图的时候隐藏的时候有利于提高绘图速度。
38.showturtle() | st():显示乌龟的形状。
39.isvisible():乌龟是否可见。如果可见返回True,反之则False。
40.shape():设置乌龟的图形形状,取值:“arrow”, “turtle”, “circle”, “square”, “triangle”, “classic”
41.isvisible():乌龟是否可见。如果可见返回True,反之则False。
42.resizemode():参数:rmode取值:"auto","user","noresize".
43.shapesize() | turtlesize() : 返回笔的属性。
44.shearfactor(): 设置或者返回但钱的剪切因子。
45.tilt():旋转由turtle shape角度从当前的倾斜角度。
46.settiltangle():无论当前的倾斜角度如何,旋转乌龟指向 angle 指定的方向。参数:angle -数字。已弃用
47.tiltangle():设置或者返回当前的倾斜角度。参数:angle - 数字
48.shapetransform():设置或返回乌龟的形状的当前转换矩阵。
49.get_shapepoly():返回当前形状的坐标。
50.onclick():鼠标点击事件。参数:fun-一个带有两个参数的函数,这些参数将与画布上单击点的坐标一个调用。num-鼠标按钮的数量,默认为1(左键)。add- True的时候将添加新的绑定。否则替换以前的绑定。
51.onrelease():鼠标释放事件。参数同点击事件。
52.ondrag():鼠标移动事件。参数同点击事件。
53.begin_poly(): 开始记录多边形的顶点。
54.end_poly():停止记录多边形的顶点。
55.get_poly():返回最后记录的多边形。
56.clone():创建并返回具有相同位置等等属性的乌龟克隆。
57.getturtle() | getpen() :获取trutle对象本身。
58.getscreen():返回正在绘制的对象。
59.setundobuffer(): 设置或禁用中断器。参数: size-整数。如果大小是None,则禁用缓冲区。
60.undobufferentries():返回undobuffer中的条目数。
61.bgcolor():设置或者返回当前的TurtleScreen的背景颜色。
62.bgpic():设置背景图片。参数: picname-文件名。
62.delay(): 设置或返回以毫秒为单位的绘制延迟,延迟越大,绘图越慢。
63.ontimer():定时器。
64.mainloop() | done() :开始循环 。
65.textinput() | numinput():弹出一个输入字符串和数字的窗口。
66.mode(): 三种方式:“standard”, “logo” or “world”
python之turtle简单绘制学习的更多相关文章
- python学习笔记(3)--turtle简单绘制
参考:大学生mooc 北京理工大学的python程序与设计课程 蟒蛇绘制代码如下: #pythonDraw.py import turtle turtle.setup(650,350,200,200) ...
- python使用turtle库绘制奥运五环
效果图: #奥运五环 import turtle turtle.setup(1.0,1.0) #设置窗口大小 turtle.title("奥运五环") #蓝圆 turtle.pen ...
- python 利用turtle库绘制七段数码管的方式,绘制当前事件(时分秒00:00:00)
# coding:utf-8# 绘制七段数码管,显示当前时间import timeimport turtle as tt # 绘制间隔def drawGap(): tt.penup() tt.fd(3 ...
- python 利用turtle库绘制五角星
# -*- coding: utf-8 –*-import turtleimport math def draw_polygon(aTurtle, size=50, n=3): for i in ra ...
- python模块turtle简单用法
##初始化turtle:t = turtle.Turtle() 或者 t = turtle.Pen()##查询turtle状态#位置t.position() #箭头朝向,箭头朝向按照顺时针或者逆时针偏 ...
- Python turtle库绘制简单图形
一.简介 Python中的turtle库是一个直观有趣的图形绘制函数库.turtle库绘制图形有一个基本框架:一个小海龟在坐标系中爬行,其爬行轨迹形成了绘制图形. 二.简单的图形列举 1.绘制4个不同 ...
- Python使用turtle库与random库绘制雪花
记录Python使用turtle库与random库绘制雪花,代码非常容易理解,画着玩玩还是可以的. 完整代码如下: 效果图如下:
- 孤荷凌寒自学python第六十六天学习mongoDB的基本操作并进行简单封装5
孤荷凌寒自学python第六十六天学习mongoDB的基本操作并进行简单封装5并学习权限设置 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十二天. 今天继续学习mongo ...
- 孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2
孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第九天. 今天继续学习mongoDB的简单操作, ...
随机推荐
- javaWeb中MVC的编程思想示例
没有学习MVC之前我只写了一个Servlet类(Note_List.java),分层之后,我将这个类分成了5个类(NoteDao.java,,NoteDaoImpl.java,,NoteService ...
- ARM指令学习
跳转指令 直接向程序计数器PC写入i跳转地址值,可以实现在4GB的地址空间中的任意跳转. ARM跳转指令可以完成向前或向后的32MB的地址空间的跳转. -B 跳转指令 -BL 带返回的跳转指令 -BL ...
- 使用Spring+MySql实现读写分离(二)spring整合多数据库
紧接着上一章,因为现在做的项目还是以spring为主要的容器管理框架,所以写以下spring如何整合多个数据源. 1. 背景 我们一般应用对数据库而言都是“读多写少”,也就说对数据库读取数据的压力比较 ...
- js怎么实现继承?
3. js怎么实现继承? 1. 使用原型prototype 这个问题其实之前总结过了……但是面试时候有点忘……主要思想是记得的,但是不会写,还是基础太不牢靠,写的太少了.一开始因为不知道怎么能继承父类 ...
- 简单读!Mybatis源码(一)一条select的一生
工具除了会用,还应该多做点.我觉得使用一个软件工具(开源类),一般会经历几个步骤: 1. 通过wiki了解大致作用,然后开始码代码: 2. 系统性地学习其特性,找出可能需要的点,用上去: 3. 通过阅 ...
- docker安装及配置
docker下载安装(官方) 卸载旧版本 sudo yum remove docker docker-client docker-client-latest docker-common docker- ...
- java中最常见的几种运行时异常,你get了吗?
NullPointerException (空指针异常) ClassCastException (类型强制转换异常) NumberFormatException (数字格式异常) NegativeAr ...
- (转)Apache从2.2换至2.4httpd.conf的调整笔记(windows环境)
原文:https://www.cnblogs.com/tjws/articles/3469075.html#top 整理一下Windows环境Apache 2.2 改成 Apache 2.4.1后 h ...
- HP服务器设置iLO
HP服务器设置iLO步凑 1.开机出现界面—按下F11进入Boot Menu: 2.选择Generic USB Boot回车: 3.选择System Configuration回车: 4.选择iLO ...
- RabbitMQ访问控制
Access Control (Authentication, Authorisation) in RabbitMQ 认证和授权这两个概念经常容易被混淆,甚至被互换使用.在RabbitMQ中这是错的, ...