python3学习笔记.4.turtle绘图
先放上参考
https://docs.python.org/3/library/turtle.html
//*******************************************************************************
1.画布(canvas)
使用 turtle.setup() | turtle.screensize()
可以设置画布大小、背景颜色以及标题等。
2.画笔
2.1画笔状态
默认画笔在画布中心、宽度为1、方向为水平右、颜色黑色并且下触。
turtle.pensize() | turtle.width() :设置画笔宽度。turtle.speed() :速度,[0:10],越大越快。
2.2绘图控制
a.画笔运动控制
- #a.画笔运动命令
- 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.circle()
- #画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
- setx( )
- #将当前x轴移动到指定位置
- sety( )
- #将当前y轴移动到指定位置
- setheading(angle)
- #设置当前朝向为angle角度
- home()
- #设置当前画笔位置为原点,朝向东
- dot(r)
- #绘制一个指定直径和颜色的圆点
- #b.画笔控制命令
- 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形状
- #c.全局控制命令
- 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参数也是可选项
- #d.其他命令
- turtle.mainloop()或turtle.done()
- #启动事件循环 -调用Tkinter的mainloop函数。必须是turtle图形程序中的最后一个语句
- turtle.mode(mode=None)
- #设置乌龟模式(“standard”,“logo”或“world”)并执行重置。如果没有给出模式,则返回当前模式
- '''
- 模式 初始龟标题 正角度
- standard 向右(东) 逆时针
- logo 向上(北) 顺时针
- '''
- turtle.delay(delay=None)
- #设置或返回以毫秒为单位的绘图延迟。
- turtle.begin_poly()
- #开始记录多边形的顶点。当前的乌龟位置是多边形的第一个顶点
- turtle.end_poly()
- #停止记录多边形的顶点。当前的乌龟位置是多边形的最后一个顶点。将与第一个顶点相连
- turtle.get_poly()
- #返回最后记录的多边形
//*******************************************************************************
贴上练习代码
- import turtle as t
- def Screen():
- #t.setup(width=1024, height=960, startx=100, starty=100)
- t.bgcolor("orange")
- t.screensize(2000,1500,"#0ffff0")
- t.title("Hello!")
- def Draw0():
- t.penup()
- t.pensize(5) #pen's width
- #t.color("black") #default is black
- #t.forward(10)
- t.circle(100,steps=3)
- t.pendown() #default is down
- t.goto(-100,-200)
- t.penup()
- def Draw1():
- t.penup()
- t.goto(100,100)
- t.pendown() #
- t.begin_fill()
- t.color("yellow")
- t.circle(50)
- t.end_fill()
- t.penup()
- def Draw2():
- t.penup()
- t.goto(200,100)
- t.pendown()
- t.begin_fill() #
- t.color("blue") #
- t.fillcolor("black") #
- t.circle(50)
- t.end_fill()
- t.penup()
- '''
- turtle.write(arg, move=False, align="left", font=("Arial", 8, "normal"))
- Parameters:
- arg – object to be written to the TurtleScreen
- move – True/False
- align – one of the strings “left”, “center” or right”
- font – a triple (fontname, fontsize, fonttype)
- '''
- def Write():
- t.penup()
- #t.goto(0,0)
- #t.write("Color Draw",font=("Times",18,"bold"))
- t.write("Home = ",False,align="left")
- t.write((0,0),True)
- t.clear()
- def Draw3():
- t.penup()
- t.setpos(200,200)
- t.pendown()
- t.pencolor("blue")
- t.right(50) #Rotate right
- t.forward(100) #
- t.dot(10,"red") #
- t.left(50+180) #Ritate left
- t.color("blue")
- t.speed(10)
- t.forward(100)
- def Draw4():
- t.penup()
- t.goto(100,100)
- t.pen(fillcolor="red",pencolor="black",pensize=10)
- t.pendown()
- t.circle(50)
- t.goto(-100,-100)
- t.pencolor("#ffff00") #"#%02x%02x%02x" % (r, g, b)
- t.width(2)
- t.forward(100)
- t.left(180)
- def Draw5():
- #t.color("black","red")
- #t.begin_fill()
- t.speed(10)
- t.circle(80)
- #t.end_fill()
- t.clear()
- t.clearscreen()
- t.delay(0)
- def main():
- Screen()
- #Write()
- #while(True):
- # Draw5()
- Draw4()
- #t.mainloop() #stop
- #t.bye() #close window
- t.exitonclick()
- if __name__ == "__main__":
- main()
python3学习笔记.4.turtle绘图的更多相关文章
- Python3学习笔记(urllib模块的使用)转http://www.cnblogs.com/Lands-ljk/p/5447127.html
Python3学习笔记(urllib模块的使用) 1.基本方法 urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, ...
- Python3学习笔记 - 准备环境
前言 最近乘着项目不忙想赶一波时髦学习一下Python3.由于正好学习了Docker,并深深迷上了Docker,所以必须趁热打铁的用它来创建我们的Python3的开发测试环境.Python3的中文教程 ...
- python3学习笔记(7)_listComprehensions-列表生成式
#python3 学习笔记17/07/11 # !/usr/bin/env python3 # -*- conding:utf-8 -*- #通过列表生成式可以生成格式各样的list,这种list 一 ...
- python3学习笔记(6)_iteration
#python3 学习笔记17/07/10 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #类似 其他语言的for循环,但是比for抽象程度更高 # f ...
- python3学习笔记(5)_slice
#python3 学习笔记17/07/10 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #切片slice 大大简化 对于指定索引的操作 fruits ...
- matlab学习笔记9 高级绘图命令_2 图形的高级控制_视点控制和图形旋转_色图和颜色映像_光照和着色
一起来学matlab-matlab学习笔记9 高级绘图命令_2 图形的高级控制_视点控制和图形旋转_色图和颜色映像_光照和着色 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 < ...
- matlab学习笔记9 高级绘图命令_1 图形对象_根对象,轴对象,用户控制对象,用户菜单对象
一起来学matlab-matlab学习笔记9 高级绘图命令_1 图形对象_根对象,轴对象,用户控制对象,用户菜单对象 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matl ...
- matlab学习笔记8 基本绘图命令-三维绘图
一起来学matlab-matlab学习笔记8 基本绘图命令_6 三维绘图 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab 程序设计与综合应用>张德丰等著 ...
- matlab学习笔记8 基本绘图命令-初级二维绘图/交互式绘图
一起来学matlab-matlab学习笔记8 基本绘图命令_5 初级二维绘图/交互式绘图 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab 程序设计与综合应用&g ...
随机推荐
- ACM数论之旅1---素数(万事开头难(>_<))
前言:好多学ACM的人都在问我数论的知识(其实我本人分不清数学和数论有什么区别,反正以后有关数学的知识我都扔进数论分类里面好了) 于是我就准备写一个长篇集,把我知道的数论知识和ACM模板都发上来(而且 ...
- 重新认识javascript的settimeout和异步
1.简单的settimeout setTimeout(function () { while (true) { } }, 1000); setTimeout(function () { alert(' ...
- Java Junit测试框架
Java Junit测试框架 1.相关概念 Ø JUnit:是一个开发源代码的Java测试框架,用于编写和运行可重复的测试.它是用于单元测试框架体系xUnit的一个实例(用于java语言).主要 ...
- MT【119】关于恒成立的一道压轴题
分析:处理恒成立问题,一般先代特殊值缩小范围.令x=0,则f(a)<f(0),容易知a<0. 排除答案C.容易理解a趋向于0时候,是可以的,排除D.在剩余的A,B选项里,显然偏向于A.因为 ...
- 【刷题】BZOJ 2820 YY的GCD
Description 神犇YY虐完数论后给傻×kAc出了一题给定N, M,求1<=x<=N, 1<=y<=M且gcd(x, y)为质数的(x, y)有多少对kAc这种傻×必然 ...
- 使用LD_Preload的Linux权限升级技巧
0x00 前言 共享库是程序在启动时加载的库.正确安装共享库后,之后启动的所有程序将自动使用新的共享库. 0x01 共享库名称 每个共享库都有一个名为soname的特殊名称.soname有前缀li ...
- 主动分布式WEB资产扫描
一. Redis的服务安装 系统环境:centos7x64 ip地址:192.168.1.11 1.设置静态IP地址 [root@localhost backlion]#vi /etc/sys ...
- CodeVs.2370 小机房的树 ( LCA 倍增 最近公共祖先)
CodeVs.2370 小机房的树 ( LCA 倍增 最近公共祖先) 题意分析 小机房有棵焕狗种的树,树上有N个节点,节点标号为0到N-1,有两只虫子名叫飘狗和大吉狗,分居在两个不同的节点上.有一天, ...
- Python之旅:元组
作用:存多个值,对比列表来说,元组不可变(是可以当做字典的key的),主要是用来读#定义:与列表类型比,只不过[]换成()age=(11,22,33,44,55)本质age=tuple((11,22, ...
- gdb调试3_显示变量 和 数组
http://www.cnblogs.com/shipfi/archive/2008/08/04/1260293.html 感谢作者! 程序变量查看文件中某变量的值:file::variablefu ...