Python怎么画小车?
可以用python内置的turtle库绘制 ,很简单但是功能很强大。import turtle 是python种很流行的绘制图像的函数库,通过x轴y轴进行坐标移动,绘制图形:
对小海龟来说,有“前进”,“后退”,“旋转”等行为,相对于坐标系也是通过“前进方向”、“后退方向”、“左侧方向”、“右侧方向”来完成,并且它可以变换颜色,改变大小等。
具体怎么实现?
后续揭晓。
效果图
总体设计
Python 画小车大致实现方法如下:
1、使用变量定义长度
2、time的sleep方法
3、汽车设计图形规划
4、代码实现小汽车模型
其中用到的有turtle(海龟)模块、部分绘图命令、circle函数、time(时间库)
详细设计
Pytho画小车利用的是turtle(海龟)模块。这个模块提供了编写向量图的方法,基本上就是画直线,点和曲线。
海龟是怎样工作的,首先让python导入turtle模块。
import turtle
引入turtle模块后,调用turle模块中的Pen函数,它会自动创建一块画布,并且带一个箭头(它就代表海龟)。
t=turtle.Pen()
实现过程还导入了时间库time 用于延迟代码执行时间
import time
Eg:实现代码中完成小车上部分后的 time.sleep(3) #延时执行3秒
同时还定义了角度、距离变量 angle、distance1、 distance2
我们使用刚创建的t的函数给海龟发指令。
t.left(90)
t.right(90)
海龟左右旋转。
t.reset()
清除画布并且把海龟放在开始位置。
t.clear()
清除屏幕,海龟仍然在原位。
t.up()
画笔放下来不在作画
t.down()
画笔抬起来重新开始画画
画汽车代码:
import turtle #导入海龟库 import time #导入时间库 t = turtle.Pen()#定义一个画笔变量 angle = 90 #定义角度变量 distance1 = 20 #定义距离变量 distance2 = 60 #定义距离变量 t.color(1,0,0)#设置小汽车颜色为红色 ‘’’ 填充颜色t.color(‘red’) t.color (‘black) 等价于 t.color(1,0,0) 和t.color(0,0,0) color函数有三个参数 第一个参数指定有多少红色 第二个参数指定有多少绿色 第三个参数指定有多少蓝色 都为0的时候此时为黑色 都为1的时候此时为白色 这种红色,绿色,蓝色的混搭叫做RGB 蓝色和红色混合产生紫色 黄色和红色混合产生橙色 ‘’’ #开始填充 t.begin_fill() #在原点向东走100 t.forward(100) #逆时针旋转90度方向,向前走20 t.left(angle) t.forward(distance1) #逆时针旋转90度方向,向前走20 t.left(angle) t.forward(distance1) #顺时针旋转90度方向,向前走20 t.right(angle) t.forward(distance1) #逆时针旋转90度方向,向前走60 t.left(angle) t.forward(distance2) #逆时针旋转90度方向,向前走20 t.left(angle) t.forward(distance1) #顺时针旋转90度方向,向前走20 t.right(angle) t.forward(distance1) #顺时针旋转90度方向,向前走20 t.left(angle) t.forward(distance1) #结束填充 t.end_fill() #延时执行3秒 time.sleep(3) #画左轮子 t.color(0,0,0)#设置轮子颜色为黑色 t.penup()#抬笔 t.forward(10)#向前移动10 t.pendown()#落笔 t.begin_fill()#开始填充 t.circle(10)# 画圆 t.end_fill()# 结束填充 t.setheading(0)#设置当前的指定角度为0度 #画右轮子 t.penup()#抬笔 t.forward(angle)#向前移动90 t.right(angle)#顺时针旋转90度方向 t.forward(10)#向前移动10 t.setheading(0)# 设置当前的指定角度为0度 t.pendown()#落笔 t.begin_fill()#开始填充 t.circle(10)# 画圆 t.end_fill()# 结束填充 time.sleep(2)
其中****里面用到的函数:
t.color()
改变画笔的颜色
begin_fill和end_fill用来给画布上一个区域填色的
circle绘画一个指定大小的圆
setheading让海龟面向指定的方向
好啦小车到此就画完了。
附录
附录
import turtle #导入海龟库
import time #导入时间库
t = turtle.Pen()
angle = 90
distance1 = 20
distance2 = 60
t.color(1,0,0)
t.begin_fill()
t.forward(100)
t.left(angle)
t.forward(distance1)
t.left(angle)
t.forward(distance1)
t.right(angle)
t.forward(distance1)
t.left(angle)
t.forward(distance2)
t.left(angle)
t.forward(distance1)
t.right(angle)
t.forward(distance1)
t.left(angle)
t.forward(distance1)
t.end_fill()
time.sleep(3)
#画左轮子
t.color(0,0,0)
t.penup()
t.forward(10)
t.pendown()
t.begin_fill()
t.circle(10)
t.end_fill()
t.setheading(0)
#画右轮子
t.penup()
t.forward(angle)
t.right(angle)
t.forward(10)
t.setheading(0
t.pendown()
t.begin_fill()
t.circle(10)
t.end_fill()
time.sleep(2)
版权归原作者 呵呵world 所有, 如有侵权,请联系我们删除。