绘制国际象棋

绘制国际象棋
 1 #国际象棋
 2 import turtle
 3 turtle.pensize(3)
 4 turtle.screensize(1200,1000)   #画布大小
 5 turtle.color("black","black")  
 6 n=eval(input())    #输入一个数
 7 
 8 turtle.penup()  
 9 turtle.goto(-4*n,4*n)     #从左上角开始画
10 turtle.pendown()           
11 turtle.forward(8*n)       #先画一个大的正方形
12 turtle.right(90)          
13 turtle.forward(8*n)
14 turtle.right(90)
15 turtle.forward(8*n)
16 turtle.right(90)
17 turtle.forward(8*n)
18 
19 coordA=[-3*n,-n,n,3*n]    
20 coordB=[4*n,2*n,0,-2*n]
21 
22 for i in range(4):
23     for j in range(4):
24         turtle.penup()
25         turtle.goto(coordA[i],coordB[j])
26         turtle.pendown()
27         turtle.begin_fill()
28         turtle.right(90)
29         turtle.forward(n)
30         turtle.right(90)
31         turtle.forward(n)
32         turtle.right(90)
33         turtle.forward(n)
34         turtle.right(90)
35         turtle.forward(n)
36         turtle.end_fill()
37 
38 coordC=[-4*n,-2*n,0,2*n]
39 coordD=[3*n,n,-n,-3*n]
40 
41 for i in range(4):
42     for j in range(4):
43         turtle.penup()
44         turtle.goto(coordC[i],coordD[j])
45         turtle.pendown()
46         turtle.begin_fill()
47         turtle.right(90)
48         turtle.forward(n)
49         turtle.right(90)
50         turtle.forward(n)
51         turtle.right(90)
52         turtle.forward(n)
53         turtle.right(90)
54         turtle.forward(n)
55         turtle.end_fill()
56 
57 turtle.hideturtle()
国际象棋

题目: 画一个国际象棋盘,小格边长由用户输入‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬2020-03-19

思路:先画一个大的正方形,设定一个N值为小正方形的边长。这样我们可以找到每个小正方形的坐标。开始绘画,按一下思路,这里会用到两层循环哦!

这是过程图:

绘制国际象棋

 

这是结果:

绘制国际象棋

 

 注:从开始填充到结束填充,需要的是起点和终点都是同一个点。也就是说,一个封闭的图形才可以填充,否则,将会是起点和终点的连线之间所有封闭图形的填充。这也是我采用这种思路的原因。

感谢大家的浏览!

 

上一篇:SpringMVC 转发、重定向


下一篇:TorchScript的TracedModule和ScriptModule的区别