Python生日蛋糕

系列文章

序号文章目录直达链接
1浪漫520表白代码https://want595.blog.csdn.net/article/details/130666881
2满屏表白代码https://want595.blog.csdn.net/article/details/129794518
3跳动的爱心https://want595.blog.csdn.net/article/details/129503123
4漂浮爱心https://want595.blog.csdn.net/article/details/128808630
5爱心光波https://want595.blog.csdn.net/article/details/132311588
6流星雨https://want595.blog.csdn.net/article/details/129395465
7满天星https://want595.blog.csdn.net/article/details/129572082
8烟花秀https://want595.blog.csdn.net/article/details/128746664
9圣诞树https://want595.blog.csdn.net/article/details/128213770
10雪花代码https://want595.blog.csdn.net/article/details/129038108
11模拟星空https://want595.blog.csdn.net/article/details/129948882
12生日蛋糕https://want595.blog.csdn.net/article/details/129694998
13樱花树https://want595.blog.csdn.net/article/details/130350743
14五彩气球https://want595.blog.csdn.net/article/details/130950744
15七彩花朵https://want595.blog.csdn.net/article/details/130897838
16恶搞代码https://want595.blog.csdn.net/article/details/131274862
17代码雨https://want595.blog.csdn.net/article/details/132574687
18中秋星空https://want595.blog.csdn.net/article/details/132910075
19国庆祝福https://want595.blog.csdn.net/article/details/133427031
20皮卡丘https://want595.blog.csdn.net/article/details/133783136
21玫瑰花https://want595.blog.csdn.net/article/details/133851128
22名侦探柯南https://want595.blog.csdn.net/article/details/133903847
23蝙蝠https://want595.blog.csdn.net/article/details/133935474
24南瓜头https://want595.blog.csdn.net/article/details/133973340
25万圣节礼物https://want595.blog.csdn.net/article/details/134011397

目录

系列文章

前言

生日蛋糕

底盘

蛋糕

蜡烛 

祝福 

尾声


前言

Hello,小伙伴们晚上好吖!前两天博主满20岁啦(要开始奔三辽呜呜呜),这几天收到了不少小伙伴们的祝福,浪漫的小博主想送给大家一份不一样的生日蛋糕,感谢大家对俺滴支持!(完整代码文末公众号免费领取哦

生日蛋糕

底盘

在制作蛋糕之前咱们需要先找到一个好看的盘子吖~

程序设计 

def ground_floor(width,height,colors_a,h):t.penup()t.goto(width, h)t.pendown()t.begin_fill()t.fillcolor(colors_a[0])for i in range(360):x=draw_x(width, i)y=draw_y(height,i)+ht.goto(x,y)t.end_fill()t.begin_fill()t.fillcolor(colors_a[1])for i in range(180):x=draw_x(width, -i)y=draw_y(height+10,-i)+ht.goto(x,y)for i in range(180,360):x=draw_x(width, i)y=draw_y(height,i)+ht.goto(x,y)t.end_fill()

程序分析

这个函数用来绘制蛋糕的底面,是整个蛋糕绘制过程中非常重要的一步。它接受四个参数:width表示蛋糕的底面直径,height表示蛋糕的高度,colors_a表示填充颜色,h表示蛋糕距离地面的高度。

在函数开始时,我们先使用penup()函数提起画笔,然后使用goto()函数将画笔移动到指定位置。这里的位置是在地面高度的位置上,离地面高度为h的位置处开始绘制。

在确定好绘制位置后,我们使用pendown()函数将画笔落下,并使用begin_fill()函数开始填充。我们使用填充颜色colors_a中的第一个颜色进行填充。

接下来的绘制过程中需要用到极坐标系来绘制圆形。使用draw_x()和draw_y()函数转换极坐标系的角度和半径,得到每个点的坐标位置。然后,我们使用for循环来绘制整个圆形。从0度开始到360度,每次转动一度,依次连接每个点。

当绘制完整个圆形后,我们使用end_fill()函数结束填充。接下来,我们需要绘制蛋糕的阴影部分。

为了绘制阴影,我们需要先将画笔移动到左侧底部角落的位置。然后,我们开始填充,并将颜色设置为colors_a中的第二个颜色。

绘制阴影的方法与绘制蛋糕的底面类似,但是需要绘制半个圆形,而不是整个圆形。使用for循环绘制从0到180度的半圆形,然后绘制从180度到360度的半圆形,以形成一个完整的半圆形形状。

最后,在绘制完整的阴影后,我们使用end_fill()函数结束填充。这样就完成了蛋糕底面的绘制。

总的来说,这个函数使用了海龟绘图库中的函数和极坐标系,完成了蛋糕底面的绘制。它是整个蛋糕绘制过程中非常重要的一步,为后续的绘制工作提供了基础。

蛋糕

找到了我们喜欢的盘子后,咱们就可以一层层制作蛋糕啦! 

程序设计 

def each_piece(width,height_1,height_2,colors_b,h):t.penup()t.goto(width,h)t.pendown()t.begin_fill()t.fillcolor(colors_b[0])for i in range(360):x=draw_x(width, i)y=draw_y(height_1,i)+ht.goto(x,y)t.end_fill()t.begin_fill()t.fillcolor(colors_b[0])for i in range(540):x=draw_x(width, i)y=draw_y(height_1,i)+height_2+ht.goto(x,y)t.goto(-width,h)t.end_fill()t.penup()t.goto(width-10,height_2+h)t.pendown()t.begin_fill()t.fillcolor(colors_b[1])for i in range(360):x=draw_x(width - 10, i)y=draw_y(height_1*0.9,i)+height_2+ht.goto(x,y)t.end_fill()t.penup()t.goto(width,h)t.pendown()t.begin_fill()t.fillcolor(colors_b[2])for i in range(180):x=draw_x(width, -i)y=draw_y(height_1,-i)+10+ht.goto(x,y)t.goto(-width,h)for i in range(180,360):x=draw_x(width, i)y=draw_y(height_1,i)+ht.goto(x,y)t.end_fill()t.penup()t.goto(width,height_2+h)t.pendown()t.begin_fill()t.fillcolor(colors_b[3])for i in range(1800):x=draw_x(width, 0.1 * i)y=draw_y(-height_1*0.3,i)+ht.goto(x,y)t.goto(-width,height_2+h)for i in range(180,360):x=draw_x(width, i)y=draw_y(height_1,i)+height_2+ht.goto(x,y)t.end_fill()

程序分析 

这个函数用来绘制蛋糕的每一层,即将整个蛋糕分成若干个部分来绘制。它接受五个参数:width表示每一层蛋糕的直径,height_1表示每一层蛋糕的高度,height_2表示每一层蛋糕之间的距离,colors_b表示每一层的填充颜色,h表示整个蛋糕距离地面的高度。

在函数开始时,我们先使用penup()函数提起画笔,然后使用goto()函数将画笔移动到指定位置。这里的位置是在地面高度的位置上,离地面高度为h的位置处开始绘制。

在确定好绘制位置后,我们使用pendown()函数将画笔落下,并使用begin_fill()函数开始填充。我们使用填充颜色colors_b中的第一个颜色进行填充。

接下来的绘制过程中需要用到极坐标系来绘制圆形。使用draw_x()和draw_y()函数转换极坐标系的角度和半径,得到每个点的坐标位置。然后,我们使用for循环来绘制整个圆形。从0度开始到360度,每次转动一度,依次连接每个点。

当绘制完整个圆形后,我们使用end_fill()函数结束填充。接下来,我们需要绘制蛋糕的其他部分。

为了绘制蛋糕的其他部分,我们需要使用一些额外的函数,比如draw_x()、draw_y()以及goto()等。

具体绘制过程包括以下几个部分:

1. 绘制蛋糕底部:使用第一个填充颜色填充整个圆形,这是蛋糕的基础部分。

2. 绘制蛋糕的中间部分:使用第一个填充颜色填充一个长方形,将第1层和第2层蛋糕之间的距离填满。

3. 绘制蛋糕的侧面:使用第二个填充颜色填充整个半圆形,这是蛋糕的侧面。我们使用圆弧的方式来绘制蛋糕的侧面。

4. 绘制蛋糕的花边:使用第三个填充颜色填充整个半圆形,这是蛋糕的花边。我们使用圆弧的方式来绘制花边,然后缩小花边的半径,使其可以放在蛋糕的顶部。

5. 绘制蛋糕的顶部:使用第四个填充颜色填充整个圆形,这是蛋糕的顶部。我们使用极坐标系来绘制圆形。注意,这里的坐标系与之前的坐标系可能略有不同。

绘制完整个蛋糕之后,我们使用end_fill()函数结束填充。

总的来说,这个函数使用了海龟绘图库中的函数和极坐标系,完成了蛋糕每一层的绘制。它是整个蛋糕绘制过程中非常重要的一步,为后续的绘制工作提供了基础。

蜡烛 

蛋糕完成后不要忘记制作蜡烛喔~

祝福 

最最最重要滴,一定不要忘记写下对她的祝福吖! 

尾声

快到文末公众号免费领取完整代码吧! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/222984.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux系统---僵尸进程、孤儿进程

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C/C》 键盘敲烂,年薪百万! 有了上一篇博客的学习,我们已经简单了解了进程的基础知识,今天我们再来学习两个特殊的进程,僵尸进程和孤儿进程。 …

电力感知边缘计算技术网关产品设计方案-硬件方案

网关硬件架构设计图: 1.配置方案 配置差异 A类网关 B类网关 CPU

SpringBoot+Redis编写一个抢红包雨的案例。附源码。

案例演示 SpringBootRedis编写一个抢红包雨的案例。附源码 1、案例分析,整体方案介绍 预备上线一个红包雨活动。这个红包雨的思路是活动开始前25分钟,在后台创建活动。然后前端用户进入,到点后将设置的金额拆分成多个小红包,开启倒…

Redis面试题:分片集群相关问题

目录 面试官:redis的分片集群有什么作用 面试官:Redis分片集群中数据是怎么存储和读取的? 面试官:redis的分片集群有什么作用 候选人:分片集群主要解决的是,海量数据存储的问题,集群中有多个m…

函数指针数组指针数组传参的本质字符指针

🚀 作者:阿辉不一般 🚀 你说呢:不服输的你,他们拿什么赢 🚀 专栏:爱上C语言 🚀作图工具:draw.io(免费开源的作图网站) 如果觉得文章对你有帮助的话,还请点赞…

redis报错3

INFO: Initializing SpringDispatcherServletdispatcherServlet

Linux网络——数据链路层

目录 一.认识以太网 二.以太网帧格式 三.认识MAC地址 四.认识MTU 五.以太局域网的通信原理 六.其他重要协议 1.DNS协议 2.域名简介 3.ICMP协议 4.NAT技术 5.NAT技术的缺陷 6.NAT和代理服务器 一.认识以太网 "以太网" 不是一种具体的网络, 而是一种技术标…

Redis实战篇(一)短信登录

Redis实战篇(一)短信登录 1.1、导入黑马点评项目 1.1.1 、导入SQL 1.1.2、有关当前模型 手机或者app端发起请求,请求我们的nginx服务器,nginx基于七层模型走的事HTTP协议,可以实现基于Lua直接绕开tomcat访问redis&a…

TUP通信

一,概括 二,常用方法 三, 实现步骤(一发一收) 四,案例(一接一收) (1),客户端 (2),服务端 (3&…

css实现鼠标移入背景图片变灰并浮现文字的效果

首先上效果图 说明一下我的html结构 如上图是一个div包裹的img标签, div的块大小width, height 自己定义, 我说明一下核心样式代码 下面写法是scss, 请自行替换 .web-query-image {position: relative; // 相对定位, 方便浮现文案进行绝对定位border-radius: 8px;box-sizing: …

python scoket 多人聊天室 带界面

前言 本来是为了局域网内能够复制段儿代码方便远程调试用的,ssh当然也可以,当然还是我头脑风暴散发,想到这里了。于是从网上拉了一个,改通之后,留一个备份。 期望还是很好的,以后用来支持ubuntu聊天之类的…

2024黑龙江省职业院校技能大赛暨国赛选拔赛“GZ034软件测试”赛项规程

2024黑龙江省职业院校技能大赛暨国赛选拔赛 “GZ034软件测试”赛项规程 一、赛项信息 赛项类别 每年赛 隔年赛(单数年/双数年) 赛项组别 中等职业教育 高等职业教育 学生赛(个人/团体) 教师赛 师生同赛 涉及专业大类、…