当前位置:首页 > 代码 > 正文

烟花程序代码(烟花程序代码)

admin 发布:2022-12-19 14:16 94


本篇文章给大家谈谈烟花程序代码,以及烟花程序代码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

少儿编程Scratch第十五讲,节日放烟花,附带程序

游戏规则:烟花从地上飞上天空,然后绽放,最后落下消失。

第一步

添加一个城市的背景

第二步

创建烟花Rocket角色,做出八个造型。

第一个造型命名为C1,代表升空的烟花。当这个小红点C1到达某个随机的位置,再将它切换到其他七个造型之一,这样就模拟出烟花绽放的效果。在加一些简单的图形效果让整个过程更加真实。

烟花程序如下:

开始将自己隐藏,然后重复执行,每隔一个随机时间创建一个克隆体。由于原角色是隐藏的,所以它的克隆体一开始都是隐藏的。

克隆体程序如下:

扩展

还可以将y坐标增加-1和将亮度特效增加-3模拟出烟花缓缓下降并逐渐消失的效果。

python炫酷烟花表白源代码是多少?

学完本教程后,你也能做出这样的烟花秀。

如上图示,我们这里通过让画面上一个粒子分裂为X数量的粒子来模拟爆炸效果。粒子会发生"膨胀”,意思是它们会以恒速移动且相互之间的角度相等。这样就能让我们以一个向外膨胀的圆圈形式模拟出烟花绽放的画面。

经过一定时间后,粒子会进入"自由落体”阶段,也就是由于重力因素它们开始坠落到地面,仿若绽放后熄灭的烟花。

基本知识:用Python和Tkinter设计烟花。

这里不再一股脑把数学知识全丢出来,我们边写代码边说理论。首先,确保你安装和导入了Tkinter,它是Python的标准GUI库,广泛应用于各种各样的项目和程序开发,在Python中使用Tkinter可以快速的创建GUI应用程序。

import tkinter as tk

from PIL import Image, ImageTk

from time import time, sleep

from random import choice, uniform, randint

from math import sin, cos, radians

除了Tkinter之外,为了能让界面有漂亮的背景,我们也导入PIL用于图像处理,以及导入其它一些包,比如time,random和math。它们能让我们更容易的控制烟花粒子的运动轨迹。

Tkinter应用的基本设置如下:

root = tk.Tk()

为了能初始化Tkinter,我们必须创建一个Tk()根部件(root widget),它是一个窗口,带有标题栏和由窗口管理器提供的其它装饰物。该根部件必须在我们创建其它小部件之前就创建完毕,而且只能有一个根部件。

w = tk.Label(root, text="Hello Tkinter!")

这一行代码包含了Label部件。该Label调用中的第一个参数就是父窗口的名字,即我们这里用的"根”。关键字参数"text”指明显示的文字内容。你也可以调用其它小部件:Button,Canvas等等。

w.pack()

root.mainloop()

接下来的这两行代码很重要。这里的打包方法是告诉Tkinter调整窗口大小以适应所用的小部件。窗口直到我们进入Tkinter事件循环,被root.mainloop()调用时才会出现。在我们关闭窗口前,脚本会一直在停留在事件循环。

将烟花绽放转译成代码

现在我们设计一个对象,表示烟花事件中的每个粒子。每个粒子都会有一些重要的属性,支配了它的外观和移动状况:大小,颜色,位置,速度等等。

c语言编程烟花代码简单

c语言编程烟花代码简单如下:

#include "stdlib.h"

#include "graphics.h"

#include "stdio.h"

#include "math.h"

#include "conio.h "

#define PI  3.1425926

main()

{

int gdriver=DETECT,gmode,errorcode;

int a[10],b[10],x,y,c,r,i,j,t;

double rad = 0.0;

/* initialize graphics and local variables */

initgraph(gdriver , gmode ,"");

/* read result of initialization */

errorcode = graphresult();

if (errorcode != grOk)  /* an error occurred */

{

printf("Graphics error : %s/n",grapherrormsg(errorcode));

printf("Please any key to halt:");

getch();

exit(1);  /* terminate with an error code */

}

randomize();

for(;!kbhit();)

{

x=rand()%500+100; /*随机中心坐标*/

y=rand()%300+100;

for(r = 0 ;r = 8 ; r++  )    /*烟花的大小设定*/

{

for(i = 0,rad = 0.0 ; rad 2*PI; rad += 0.78 )  /*设定坐标*/

{

a[i++] = x + (int)r *10* cos(rad);

b[ i ] = y + (int)r *10* sin(rad);

}

t = i;

for(i=1;it;i++)

{

c=rand()%13+1; /*各点的颜色随机*/

setcolor(c);       /*功能:将当前图形屏幕的当前笔画颜色置为color.*/

circle(a[i],b[i],1);/* a[i],b[i] 为圆心 1 为半径 画圆 */

}

delay(10000);

delay(10000);

cleardevice();

函数名: cleardevice         

功  能: 清除图形屏幕 

用  法: void far cleardevice(void);

}

}

getch();

closegraph();

函数名: closegraph

功  能: 关闭图形系统

用  法: void far closegraph(void);

}

初始化烟花参数

void Init( int i )

{

// 分别为:烟花中心到图片边缘的最远距离、烟花中心到图片左上角的距离 (x、y) 两个分量

int r[13] = { 120, 120, 155, 123, 130, 147, 138, 138, 130, 135, 140, 132, 155 };

int x[13] = { 120, 120, 110, 117, 110, 93, 102, 102, 110, 105, 100, 108, 110 };

int y[13] = { 120, 120, 85, 118, 120, 103, 105, 110, 110, 120, 120, 104, 85 };

/**** 初始化烟花 *****/

Fire[i].x = 0; // 烟花中心坐标

Fire[i].y = 0;

Fire[i].width = 240; // 图片宽

Fire[i].height = 240; // 图片高

Fire[i].max_r = r[i]; // 最大半径

Fire[i].cen_x = x[i]; // 中心距左上角距离

Fire[i].cen_y = y[i];

Fire[i].show = false; // 是否绽放

Fire[i].dt = 5; // 绽放时间间隔

Fire[i].t1 = timeGetTime();

Fire[i].r = 0; // 从 0 开始绽放

/**** 初始化烟花弹 *****/

Jet[i].x = -240; // 烟花弹左上角坐标

Jet[i].y = -240;

Jet[i].hx = -240; // 烟花弹发射最高点坐标

Jet[i].hy = -240;

Jet[i].height = 0; // 发射高度

Jet[i].t1 = timeGetTime();

Jet[i].dt = rand() % 10; // 发射速度时间间隔

Jet[i].n = 0; // 烟花弹闪烁图片下标

Jet[i].shoot = false; // 是否发射

}

c语言放烟花代码

#include "stdlib.h"

#include "graphics.h"

#include "stdio.h"

#include "math.h"

#include "conio.h "

#define PI  3.1425926

main()

{

int gdriver=DETECT,gmode,errorcode;

int a[10],b[10],x,y,c,r,i,j,t;

double rad = 0.0;

/* initialize graphics and local variables */

initgraph(gdriver , gmode ,"");

/* read result of initialization */

errorcode = graphresult();

if (errorcode != grOk)  /* an error occurred */

{

printf("Graphics error : %s/n",grapherrormsg(errorcode));

printf("Please any key to halt:");

getch();

exit(1);  /* terminate with an error code */

}

randomize();

for(;!kbhit();)

{

x=rand()%500+100; /*随机中心坐标*/

y=rand()%300+100;

for(r = 0 ;r = 8 ; r++  )    /*烟花的大小设定*/

{

for(i = 0,rad = 0.0 ; rad 2*PI; rad += 0.78 )  /*设定坐标*/

{

a[i++] = x + (int)r *10* cos(rad);

b[ i ] = y + (int)r *10* sin(rad);

}

t = i;

for(i=1;it;i++)

{

c=rand()%13+1; /*各点的颜色随机*/

setcolor(c);       /*功能:将当前图形屏幕的当前笔画颜色置为color.*/

circle(a[i],b[i],1);/* a[i],b[i] 为圆心 1 为半径 画圆 */

}

delay(10000);

delay(10000);

cleardevice();

函数名: cleardevice         

功  能: 清除图形屏幕 

用  法: void far cleardevice(void);

}

}

getch();

closegraph();

函数名: closegraph

功  能: 关闭图形系统

用  法: void far closegraph(void);

}

扩展资料

C语言:表白显示(多彩小心心)

#include stdio.h

#include math.h

#include stdlib.h

#define I 20

#define R 340

#include string.h

int main()

{

char answer[10];

printf("遇到你\n我才发现\n曾经所有的条件\n似乎都成了我等你的借口\n\n");

printf("我对你的感情已经决堤\n所以\n请允许我,从今往后映入你\n明媚的眼\n");

printf("我\n想和你\n耳鬓厮磨,相濡以沫!");

printf("答应我吧!\n输入yes,你可以看到我的真心\n");

scanf("%s", answer);

float y, x, z, f;

for (y = 1.5f; y -1.5f; y -= 0.1f)

{

for (x = -1.5f; x 1.5f; x += 0.05f)

{

z = x * x + y * y - 1;

f = z * z*z - x * x*y*y*y;

putchar(f = 0.0f ? "*********"[(int)(f*-8.0f)] : ' ');

}

putchar('\n');

}

long time;

for (;;)

{

system("color a");

for (time = 0; time99999999; time++);

system("color b");

for (time = 0; time99999999; time++);

system("color c");

for (time = 0; time99999999; time++);

system("color d");

for (time = 0; time99999999; time++);

system("color e");

for (time = 0; time99999999; time++);

system("color f");

for (time = 0; time99999999; time++);

system("color 0");

for (time = 0; time99999999; time++);

system("color 1");

for (time = 0; time99999999; time++);

system("color 2");

for (time = 0; time99999999; time++);

system("color 3");

for (time = 0; time99999999; time++);

system("color 4");

for (time = 0; time99999999; time++);

system("color 5");

for (time = 0; time99999999; time++);

system("color 6");

for (time = 0; time99999999; time++);

system("color 7");

for (time = 0; time99999999; time++);

system("color 8");

for (time = 0; time99999999; time++);

system("color 9");

}

getchar();

return 0;

}

烟花程序代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于烟花程序代码、烟花程序代码的信息别忘了在本站进行查找喔。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/9283.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载