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 ...
随机推荐
- Java的checked exception与unchecked exception
在Java中exception分为checked exception和unchecked异常,两者有什么区别呢? 从表象来看, checked异常就是需要在代码中try ... catch ...的异 ...
- BZOJ5092 分割序列(贪心)
设si为该序列的异或前缀和,则显然相当于求Σmax{sj+sj^si} (i=1~n,j=0~i).从高位到低位考虑,如果该位si为1,无论sj怎么填都是一样的:如果该位si为0,则sj该位应尽量为1 ...
- c语言基本数据类型(short、int、long、char、float、double)
一 C 语言包含的数据类型 short.int.long.char.float.double 这六个关键字代表C 语言里的六种基本数据类型. 在不同的系统上,这些类型占据的字节长度是不同的: 在32 ...
- matplotlib + pandas绘图
利用pandas处理日期数据,并根据日期绘制增长率曲线. 处理的json文本内容如下: # pd.json [{"name": "A", "date& ...
- R2学习记录
Setting up the Libevent library1.重写log行为 #include <event2/event.h> #include <stdio.h> st ...
- Statement和PreparedStatement之间的区别
Statement和PreparedStatement之间的区别: 1.PreparedStatement是预编译的,对于批量处理可以大大提高效率. 也叫JDBC存储过程2.使用 Statement ...
- 【BZOJ2655】Calc(拉格朗日插值,动态规划)
[BZOJ2655]Calc(多项式插值,动态规划) 题面 BZOJ 题解 考虑如何\(dp\) 设\(f[i][j]\)表示选择了\(i\)个数并且值域在\([1,j]\)的答案. \(f[i][j ...
- BZOJ1061 [Noi2008]志愿者招募 【单纯形】
题目链接 BZOJ1061 题解 今天终于用正宗的线性规划\(A\)了这道题 题目可以看做有\(N\)个限制和\(M\)个变量 变量\(x_i\)表示第\(i\)种志愿者的人数,对于第\(i\)种志愿 ...
- 一次lvs迁移记录
需求:从117.119.33.99迁移到122.14.206.125,lvs为dr模式,系统版本为debian7 1.安装lvs和keepalived # aptitude install -y ip ...
- java Class.getSimpleName() 的用法
Usage in android: private static final String TAG = DemoApplication.class.getSimpleName(); public cl ...