Python
问题描述
通过读取一个轨迹文件,利用文件中的轨迹数据指导turtle绘图。
轨迹文件采用csv结构(首行为列名),数据间逗号分隔,每行的含义如下:
第一行,旋转方向(1为右转-0为左转),角度,前进距离,笔颜色R(0-255),笔颜色G(0-255),笔颜色B(0-255),笔的宽度。
第二行,0,0,100,255,0,0,8
第三行,1,90,100,0,255,0,8
等
(1)利用turtle.colormode(255)#设置颜色模式0-255,RGB参数
(2)思路:利用循环读取每行的轨迹数据,先配置笔的颜色和宽度,然后判断旋转方向,进行旋转,最后前进。
0,0,100,255,0,0,8
1,90,100,0,255,0,8
1,90,100,0,0,255,8
1,90,100,0,0,255,8
1,0,200,0,0,0,8
1,120,200,0,0,0,8
1,120,200,0,0,0,8
结果:
import turtle
with open('turtle.csv','r') as f:
p = f.readlines()
p = [i.strip().split(',') for i in p]
turtle.colormode(255)
for i in p[1:]:
a = list(map(int,i))
angle = abs(a[0]*360-a[1])
turtle.left(angle)
turtle.pensize(a[6])
turtle.pencolor(a[3],a[4],a[5])
turtle.forward(a[2])
turtle.mainloop()