先放上参考

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绘图的更多相关文章

  1. Python3学习笔记(urllib模块的使用)转http://www.cnblogs.com/Lands-ljk/p/5447127.html

    Python3学习笔记(urllib模块的使用)   1.基本方法 urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None,  ...

  2. Python3学习笔记 - 准备环境

    前言 最近乘着项目不忙想赶一波时髦学习一下Python3.由于正好学习了Docker,并深深迷上了Docker,所以必须趁热打铁的用它来创建我们的Python3的开发测试环境.Python3的中文教程 ...

  3. python3学习笔记(7)_listComprehensions-列表生成式

    #python3 学习笔记17/07/11 # !/usr/bin/env python3 # -*- conding:utf-8 -*- #通过列表生成式可以生成格式各样的list,这种list 一 ...

  4. python3学习笔记(6)_iteration

    #python3 学习笔记17/07/10 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #类似 其他语言的for循环,但是比for抽象程度更高 # f ...

  5. python3学习笔记(5)_slice

    #python3 学习笔记17/07/10 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #切片slice 大大简化 对于指定索引的操作 fruits ...

  6. matlab学习笔记9 高级绘图命令_2 图形的高级控制_视点控制和图形旋转_色图和颜色映像_光照和着色

    一起来学matlab-matlab学习笔记9 高级绘图命令_2 图形的高级控制_视点控制和图形旋转_色图和颜色映像_光照和着色 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 < ...

  7. matlab学习笔记9 高级绘图命令_1 图形对象_根对象,轴对象,用户控制对象,用户菜单对象

    一起来学matlab-matlab学习笔记9 高级绘图命令_1 图形对象_根对象,轴对象,用户控制对象,用户菜单对象 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matl ...

  8. matlab学习笔记8 基本绘图命令-三维绘图

    一起来学matlab-matlab学习笔记8 基本绘图命令_6 三维绘图 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab 程序设计与综合应用>张德丰等著 ...

  9. matlab学习笔记8 基本绘图命令-初级二维绘图/交互式绘图

    一起来学matlab-matlab学习笔记8 基本绘图命令_5 初级二维绘图/交互式绘图 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab 程序设计与综合应用&g ...

随机推荐

  1. poj 1523 SPF(双连通分量割点模板)

    题目链接:http://poj.org/problem?id=1523 题意:给出无向图的若干条边,求割点以及各个删掉其中一个割点后将图分为几块. 题目分析:割点用tarjan算法求出来,对于每个割点 ...

  2. UVAlive4080_Warfare And Logistics

    给一个无向图,求出两个值,所有点到所有其他点的最短距离和,任意删除一条边后的这个值. 数据规模是100点1000边. 白书例题,不多说了直接对于每个点求出最短路树,对于每条边,如果它不是最短路树上的边 ...

  3. HUAS 2017暑假第六周比赛-题解

    A.Parenthesis 括号匹配的问题有一种经典的做法. 将左括号看成1,右括号看成-1,做一遍前缀和sum. 括号序列是合法的当且仅当\(sum[n]=Min(sum[1],sum[2].... ...

  4. 【bzoj4013】 HNOI2015—实验比较

    http://www.lydsy.com/JudgeOnline/problem.php?id=4013 (题目链接) 题意 给出$n$个数的$m$个大小关系,问它们之间可以形成的单调不降的序列有多少 ...

  5. IntelliJ IDEA详细配置和使用教程-字体、编码和基本设置

    IDEA使用--字体.编码和基本设置 https://blog.csdn.net/frankcheng5143/article/details/50779149 IntelliJ IDEA详细配置和使 ...

  6. 解题:APIO 2012 派遣

    题面 以报酬为标准维护一个大根堆,从根节点往上合并,每次踢掉若干人直到花费合法后更新答案 #include<cstdio> #include<cstring> #include ...

  7. 【堆的启发式合并】【P5290】[十二省联考2019]春节十二响

    Description 给定一棵 \(n\) 个节点的树,点有点权,将树的节点划分成多个集合,满足集合的并集是树的点集,最小化每个集合最大点权之和. Limitation \(1~\leq~n~\le ...

  8. D. Dog Show 2017-2018 ACM-ICPC, NEERC, Southern Subregional Contest, qualification stage (Online Mirror, ACM-ICPC Rules, Teams Preferred)

    http://codeforces.com/contest/847/problem/D 巧妙的贪心 仔细琢磨... 像凸包里的处理 #include <cstdio> #include & ...

  9. 初识Unity Mesh

    Mesh概念:Mesh是Unity中的一个组件,称为网格组件.通俗的讲,Mesh是指模型的网格,3D模型是由多边形拼接而成,而多边形实际上是由多个三角形拼接而成的.所以一个3D模型的表面其实是由多个彼 ...

  10. linux driver ------ 交叉工具链(cross toolchain)

    在 ARM Linux 的开发中,人们趋向于使用 Linaro(http://www.linaro.org/)工具链团队维护的 ARM 工具链,它以每月一次的形式发布新的版本,编译好的可执行文件可以网 ...