python turtle画笔大小命令
turtle.pensize() | turtle.width() :设置画笔宽度。turtle.speed() :速度,[0:10],越大越快。使用 turtle.setup() | turtle.screensize()默认画笔在画布中心、宽度为1、方向为水平右、颜色黑色并且下触。可以设置画布大小、背景颜色以及标题等。1.画布(canvas)
·
1.画布(canvas)
使用 turtle.setup() | turtle.screensize()
可以设置画布大小、背景颜色以及标题等。
2.画笔
2.1画笔状态
默认画笔在画布中心、宽度为1、方向为水平右、颜色黑色并且下触。
turtle.pensize() | turtle.width() :设置画笔宽度。turtle.speed() :速度,[0:10],越大越快。
2.2绘图控制
a.画笔运动控制
1 #a.画笔运动命令
2
3 turtle.forward(distance)
4 #向当前画笔方向移动distance像素长度
5 turtle.backward(distance)
6 #向当前画笔相反方向移动distance像素长度
7 turtle.right(degree)
8 #顺时针移动degree°
9 turtle.left(degree)
10 #逆时针移动degree°
11 turtle.pendown()
12 #移动时绘制图形,缺省时也为绘制
13 turtle.goto(x,y)
14 #将画笔移动到坐标为x,y的位置
15 turtle.penup()
16 #提起笔移动,不绘制图形,用于另起一个地方绘制
17 turtle.circle()
18 #画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
19 setx( )
20 #将当前x轴移动到指定位置
21 sety( )
22 #将当前y轴移动到指定位置
23 setheading(angle)
24 #设置当前朝向为angle角度
25 home()
26 #设置当前画笔位置为原点,朝向东
27 dot(r)
28 #绘制一个指定直径和颜色的圆点
29
30 #b.画笔控制命令
31
32 turtle.fillcolor(colorstring)
33 #绘制图形的填充颜色
34 turtle.color(color1, color2)
35 #同时设置pencolor=color1, fillcolor=color2
36 turtle.filling()
37 #返回当前是否在填充状态
38 turtle.begin_fill()
39 #准备开始填充图形
40 turtle.end_fill()
41 #填充完成
42 turtle.hideturtle()
43 #隐藏画笔的turtle形状
44 turtle.showturtle()
45 #显示画笔的turtle形状
46
47 #c.全局控制命令
48
49 turtle.clear()
50 #清空turtle窗口,但是turtle的位置和状态不会改变
51 turtle.reset()
52 #清空窗口,重置turtle状态为起始状态
53 turtle.undo()
54 #撤销上一个turtle动作
55 turtle.isvisible()
56 #返回当前turtle是否可见
57 stamp()
58 #复制当前图形
59 turtle.write(s [,font=("font-name",font_size,"font_type")])
60 #写文本,s为文本内容,font是字体的参数,分别为字体名称,大小和类型;font为可选项,font参数也是可选项
61
62 #d.其他命令
63
64 turtle.mainloop()或turtle.done()
65 #启动事件循环 -调用Tkinter的mainloop函数。必须是turtle图形程序中的最后一个语句
66 turtle.mode(mode=None)
67 #设置乌龟模式(“standard”,“logo”或“world”)并执行重置。如果没有给出模式,则返回当前模式
68 '''
69 模式 初始龟标题 正角度
70 standard 向右(东) 逆时针
71 logo 向上(北) 顺时针
72 '''
73 turtle.delay(delay=None)
74 #设置或返回以毫秒为单位的绘图延迟。
75 turtle.begin_poly()
76 #开始记录多边形的顶点。当前的乌龟位置是多边形的第一个顶点
77 turtle.end_poly()
78 #停止记录多边形的顶点。当前的乌龟位置是多边形的最后一个顶点。将与第一个顶点相连
79 turtle.get_poly()
80 #返回最后记录的多边形
1 import turtle as t
2
3 def Screen():
4 #t.setup(width=1024, height=960, startx=100, starty=100)
5 t.bgcolor("orange")
6 t.screensize(2000,1500,"#0ffff0")
7 t.title("Hello!")
8
9 def Draw0():
10 t.penup()
11 t.pensize(5) #pen's width
12 #t.color("black") #default is black
13 #t.forward(10)
14 t.circle(100,steps=3)
15 t.pendown() #default is down
16 t.goto(-100,-200)
17 t.penup()
18
19 def Draw1():
20 t.penup()
21 t.goto(100,100)
22 t.pendown() #
23 t.begin_fill()
24 t.color("yellow")
25 t.circle(50)
26 t.end_fill()
27 t.penup()
28
29 def Draw2():
30 t.penup()
31 t.goto(200,100)
32 t.pendown()
33 t.begin_fill() #
34 t.color("blue") #
35 t.fillcolor("black") #
36 t.circle(50)
37 t.end_fill()
38 t.penup()
39
40 '''
41 turtle.write(arg, move=False, align="left", font=("Arial", 8, "normal"))
42 Parameters:
43 arg – object to be written to the TurtleScreen
44 move – True/False
45 align – one of the strings “left”, “center” or right”
46 font – a triple (fontname, fontsize, fonttype)
47 '''
48 def Write():
49 t.penup()
50 #t.goto(0,0)
51 #t.write("Color Draw",font=("Times",18,"bold"))
52 t.write("Home = ",False,align="left")
53 t.write((0,0),True)
54 t.clear()
55
56 def Draw3():
57 t.penup()
58 t.setpos(200,200)
59 t.pendown()
60 t.pencolor("blue")
61 t.right(50) #Rotate right
62 t.forward(100) #
63 t.dot(10,"red") #
64 t.left(50+180) #Ritate left
65 t.color("blue")
66 t.speed(10)
67 t.forward(100)
68
69 def Draw4():
70 t.penup()
71 t.goto(100,100)
72 t.pen(fillcolor="red",pencolor="black",pensize=10)
73 t.pendown()
74 t.circle(50)
75 t.goto(-100,-100)
76 t.pencolor("#ffff00") #"#%02x%02x%02x" % (r, g, b)
77 t.width(2)
78 t.forward(100)
79 t.left(180)
80
81 def Draw5():
82 #t.color("black","red")
83 #t.begin_fill()
84 t.speed(10)
85 t.circle(80)
86 #t.end_fill()
87 t.clear()
88 t.clearscreen()
89 t.delay(0)
90
91
92 def main():
93 Screen()
94 #Write()
95 #while(True):
96 # Draw5()
97 Draw4()
98 #t.mainloop() #stop
99 #t.bye() #close window
100 t.exitonclick()
101
102 if __name__ == "__main__":
103 main()
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献17条内容
所有评论(0)