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 ...
随机推荐
- behavior
http://www.css88.com/book/css/properties/only-ie/behavior.htm 语法: behavior:<url> | url(#objID) ...
- Qt——用于表格QTableView的模型
如果想使用表格来呈现数据,Qt提供了一个方便的部件QTableWidget,但是直接用它实现一些功能可能比较困难.这里将介绍一种强大.灵活的方式来操作表格. 一.模型/视图架构 在这个架构中,模型用于 ...
- 自平衡二叉(查找树/搜索树/排序树) binary search tree
在计算机科学中,AVL树是最先发明的自平衡二叉查找树.AVL树得名于它的发明者 G.M. Adelson-Velsky 和 E.M. Landis,他们在 1962 年的论文 "An alg ...
- java实现函数指针
在Java程序员面试笔试宝典中看到的东西,感觉很有用,特开此文 函数指针一般作为函数的参数来使用,开发人员在使用是可以根据自己的需求传递自动以的函数来实现指定的功能,例如,在实现排序算法时,可以通过传 ...
- Web前端开发神器--WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版
WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版 http://www.jb51.net/softs/171905.html WebStorm 是jetbrains公司旗 ...
- GDOI2018记录
说实话,直到初三暑假升高一的时候,我才开始形成竞赛观.那时才顿觉一年的各个比赛是多么重要. 紧接着我的NOIP就直接爆炸了.这意味着我一年也完蛋了.各种人去WC,然后我留在家里. 那GDO ...
- MyBatis.1入门篇
一:简介 MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动.创建connection.创建statem ...
- 转载OPENCV学习随笔
转载自 亦轩Dhc http://www.cnblogs.com/daihengchen/p/5492729.html 学习笔记:使用opencv做双目测距(相机标定+立体匹配+测距). 最近在做 ...
- 【Asp.net入门06】第一个ASP.NET 应用程序-案例说明
创建简单的应用程序 本章的剩余部分将探讨一些用于创建简单的数据输入应用程序的基本ASP.NET功能.在这一节中,我们将加快进度——目标是演示ASP.NET的用法,因此将略过有关后台运行机制的详细说明. ...
- linux命令总结之ip命令
Linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...