本节知识点
1. 设置画布大小
2. 两个案例对比分析
3. 复习自定义函数
案例:餐布桌布设计
课堂笔记
作业布置
1、完成视频中两款餐布桌布的图案设计。
2、自己设计一款餐布桌布(可参考网上的图案)。
3、多尝试用自定义函数去简化主程序。
4、画五角星,并思考随机星空的绘制思路。
观察并思考
星星的位置、大小、颜色
有哪些变化?
代码分享
此处的代码只做参考,同一个问题可以有很多种解决方法,同一种解决方法也可以用不同的代码去实现。
对比分析以下两个案例中的相同点和不同点。
根据画布的宽和高,平均分布线或点。并推到出循环次数的计算公式是本案例的难点。
【餐布桌布设计1 效果展示】
# 餐布桌布设计1 | 灰底白线# 程序初始化操作import turtle # 导入 turtle 库turtle.setup(800,600) # 设置窗口的大小为 宽800*高600像素,窗口位于屏幕中心。turtle.pensize(2) # 设置画笔的粗细为 2turtle.bgcolor("gray") # 设置背景颜色为 grayturtle.pencolor("white") # 设置画布颜色为 whiteturtle.speed(0) # 设置海龟的绘图速度为0,最快。参数为1时最慢。# 海龟画横线x=-400 # 将 x坐标 初始化为 -400y=300 # 将 y坐标 初始化为 300i=1while i<=16: # 确定循环次数 ,画【15+1】行横线 turtle.penup() # 画笔抬起 turtle.goto(x,y) # 让海龟移至坐标(-400,300),即窗口的左上角。 turtle.pendown() # 画笔落下 turtle.forward(800) # 海龟向前走800像素,画出一条800像素长的横线 y=y-40 # 每次循环将y坐标减少40,【600/40=15】将画布上线平均分成15块。要画出16行横线 i=i+1# 让海龟头朝下,准备画竖线turtle.right(90)# 海龟画竖线x=-400y=300j=1while j<=21: # 确定循环次数,画【20+1】列竖线 turtle.penup() # 画笔抬起 turtle.goto(x,y) # 让海龟移至坐标(-400,300),即窗口的左上角。 turtle.pendown() # 画笔落下 turtle.forward(600) # 海龟向前走600像素,画出一条600像素长的竖线 x=x+40 # 每次循环将x坐标增加40,【800/40=20】将画布左右平均分成20块。要画出21行竖线 j=j+1turtle.hideturtle() # 隐藏海龟
【餐布桌布设计2 效果展示】
# 餐布桌布设计2 | 粉底白点# 程序初始化操作import turtle # 导入 turtle 库turtle.setup(800,600) # 设置窗口的大小为 800*600像素,窗口位于屏幕中心turtle.colormode(255) # 改变颜色模式为RGBturtle.bgcolor(255,160,180) # 设置背景颜色为 255,160,180 (粉色系)turtle.speed(0) # 设置海龟的绘图速度为0,最快。#turtle.delay(0) # 海龟绘图延迟时间设置为0,绘图速度最快x=-350 # 将 x坐标 初始化为-330y=250 # 将 y坐标 初始化为300# 自定义函数,海龟画一行白点(1行 i 个)def draw_line(): # 自定义函数(无参函数) draw_line turtle.penup() # 画笔抬起 turtle.goto(x,y) # 海龟移动至坐标(x,y) i=1 while i<=15: # 一行打印出【16-1】个点 turtle.pendown() # 画笔落下 turtle.dot(20,(255,205,203)) # 画直径为20像素的点,颜色为 255,205,203 turtle.penup() # 画笔抬起 turtle.forward(50) # 每次循环画完一个点后,海龟前进50像素 【800/50=16】 i=i+1# 主程序j=1while j<=11: # 画【12-1】行白点 draw_line() # 调用自定义函数 draw_line y=y-50 # 每次循环将y坐标减少50像素,【600/50=12】 j=j+1turtle.hideturtle() # 隐藏海龟
为了简化案例,代码中将画布的大小设置为固定值,也可优化代码,实现在任意大小的画布上都可以平均分布画线或点。(提示:需要定义有参函数)
-----
end-----
编程风已至,我们需迎风前行
『 成功的路上并不拥挤,
因为坚持下来的人不多。』
期待……
你是坚持的那一个
点击左下方"", 可查看 Python 所有课程目录