先放上参考
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()