
正文
java烟花代码注释 eclipse烟花代码
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
烟花程序解释,请大家帮帮忙!一定要详细啊,最好每个语句都能有解释。感谢啦!
# define PI 3.14 :定义常量 PI=3.14
======以下为引入java烟花代码注释的头文件, 类似java中java烟花代码注释的import page, C#中java烟花代码注释的using namespace==
#includegraphics.h == 画图
#includestdio.h == 标准输入输出
#includestdlib.h == 系统函数
#includebios.h == 主板输入输出
#includemath.h == 数学函数
#includetime.h == 日期
#includealloc.h == 这个...忘记java烟花代码注释了, 自己百度吧~
#includeconio.h == 控制台输入输出
#includedos.h == dos命令
#includestring.h == 字符串
====以下为声明方法 C++中需要先声明方法 ...介个就不用多说了吧~~
void star(int x,int y);
void drawstar();
void Putstar(void);
void starflower();
=====以下为函数主体 Main函数为启动函数 主程序入口=====
int main()
{
int gdriver=DETECT; = 介个.... 楼主确定代码齐全? 感觉是定义的常量, 但是前面米有看到这个定义额
int gmode=0;
=========系统方法. 不多说了
initgraph(gdriver,gmode,"c:\\tc30\\bgi");/*注意bgi路径的设置*/
========调用自定义方法,具体方法实现都在下面==========
drawstar();
starflower();
getch();
closegraph();
return 0;
}
=======以下是自定义方法的实现=======================
void star(int x,int y)/*画星星函数*/
{
========定义变量,初始化,设置颜色
int i,a;
int n=5;
int x1[5],y1[5],x2[5],y2[5];
setcolor(YELLOW);
=======获取坐标(都是数学公式计算 ,就不用多说了吧~~)
for(i=0;i5;i++)
{
x1[i]=x+n*cos(i*72*PI/180);
y1[i]=y+n*sin(i*72*PI/180);
x2[i]=x+n/2*cos(i*72*PI/180+PI/5);
y2[i]=y+n/2*sin(i*72*PI/180+PI/5);
}
for(i=0;i5;i++)
{
a=i+1;
if(a4) a=0;
========根据获取的坐标画直线(连线)
line(x1[i],y1[i],x2[i],y2[i]);/*两点间画直线*/
line(x2[i],y2[i],x1[a],y1[a]);
}
}
void Putstar(void)/*画繁星函数*/
{
====定义变量, 初始化
int seed=1858;
int i,dotx,doty,h,w,color,maxcolor;
w=getmaxx();/*得到屏幕最大X坐标*/
h=getmaxy();/*得到屏幕最大Y坐标*/
srand(seed);/*产生随机数*/
for(i=0;i100;++i)
{
===循环获取随机坐标, 随机颜色
dotx=i+random(w-1);
doty=1+random(h-1);
color=random(h-1);
setcolor(color);
===画图
putpixel(dotx,doty,color);/*在指定位置画一像素*/
===下面介个... 应该是自定义的画圈圈的类吧.... java烟花代码注释我猜的...
circle(dotx+1,doty+1,1);
}
srand(seed);
}
void drawstar()
{
int a[]={70,280,230,440,140,110,180,90,500,360};
int b[]={50,27,88,99,100,37,67,98,60,78},i;
===设置填充模式跟颜色神马的...
setfillstyle(1,14);
===循环调用方法
for(i=0;i10;i++)
{
==介个是画星星
star(a[i],b[i]);
==介个是给刚刚画的那个填充颜色
floodfill(a[i],b[i],YELLOW);
}
==介个是第二个画星星的函数(前面有的)
Putstar();
}
void starflower() /*烟花绽放函数*/
{
===定义,初始化数据
int i=0,j,n=60,n1=2;
int x=200,y=200,size=100;
int cover=0;
int delay1=20;
int wid,hei;
int px,py;
int color=9;
===检查是不是有keyboard input, 有就不放烟花了....
while(!kbhit())
{
if(isize)
{
=====循环画一像素....(模拟烟花绽放, 到处涂鸦...)
for(j=0;jn;j++)
{
==计算坐标
px=x+i*cos(j*360/n*PI/180);
py=y+i*sin(j*360/n*PI/180);
== 涂鸦开始....
putpixel(px,py,rand()%16);
putpixel(px-1,py,color);
putpixel(px,py+1,color);
putpixel(px+1,py-1,YELLOW);
putpixel(px,py-1,YELLOW);
putpixel(px+1,py,RED);
putpixel(px+1,py+1,RED);
}
}
== 如果没画满就继续涂鸦
if(isizecoversize)
{
setcolor(BLACK);
circle(x,y,cover++);
delay1=20;
}
== 如果画满了就清除, 重新开始
if(cover==size)
{
i=0;
x=50+rand()%550;
y=rand()%400;
cover=0;
color=rand()%16;
size=50+rand()%250;
delay1=40;
===清除图象
clearviewport();
====重新开始
drawstar();
}
i+=n1;
delay(delay1);/*暂停*/
}
}
=================================
好吧就这样了....逐行看代码很累的.楼主自己走走流程吧...
相关问答
Q1: 2022年跨年烟花代码可复制
烟花代码如下:
package love;
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
import java.net.URL;
import java.util.Random;
烟花
@author enjoy
@SuppressWarnings("serial")
public class Q extends Applet implements Runnable
public int speed, variability, Max_Number, Max_Energy, Max_Patch,
Max_Length, G;
public String sound;
private int width, height;
private Thread thread = null;
private BeaClassDemo bcd[];
public void init()
int i;
this.setSize(1900, 900);
width = getSize().width - 1;
height = getSize().height - 1;
speed = 1; // 烟花绽放的速度
variability = 10;
Max_Number = 980; // 可发出烟花的最大数目
Max_Energy = width + 50;
Max_Patch = 90; // 最大的斑点数
Max_Length = 90; // 斑点的最大距离
G = 150; // 向地面弯曲的力度
bcd = new BeaClassDemo[Max_Number];
for (i = 0; i Max_Number; i++)
bcd[i] = new BeaClassDemo(width, height, G);
}
public void start() {
if (thread == null) {
thread = new Thread(this);
thread.start();
}
}
@SuppressWarnings("deprecation")
public void stop() {
if (thread != null) {
thread.stop();
thread = null;
}
}
@SuppressWarnings({ "unused", "static-access" })
public void run() {
int i;
int E = (int) (Math.random() * Max_Energy * 3 / 4) + Max_Energy / 4 + 1;
int P = (int) (Math.random() * Max_Patch * 3 / 4) // 烟花的斑点数
+ Max_Patch / 4 + 1;
int L = (int) (Math.random() * Max_Length * 3 / 4) // 烟花可发射出的距离
+ Max_Length / 4 + 1;
long S = (long) (Math.random() * 10000);
boolean sleep;
Graphics g = getGraphics();
URL u = null;
while (true) {
try {
thread.sleep(1000 / speed);
catch (InterruptedException x) {
sleep = true;
for (i = 0; i Max_Number; i++)
sleep = sleep bcd[i].sleep;
if (sleep Math.random() * 100 variability) {
E = (int) (Math.random() * Max_Energy * 3 / 4) + Max_Energy / 4
+ 1;
P = (int) (Math.random() * Max_Patch * 3 / 4) + Max_Patch / 4
+ 1;
L = (int) (Math.random() * Max_Length * 3 / 4) + Max_Length / 4
+ 1;
S = (long) (Math.random() * 10000);
for (i = 0; i Max_Number; i++) {
if (bcd[i].sleep Math.random() * Max_Number * L 1)
bcd[i].init(E, P, L, S);
bcd[i].start();
bcd[i].show(g);
public void paint(Graphics g)
g.setColor(Color.black);
g.fillRect(0, 0, width + 1, height + 1);
class BeaClassDemo
public boolean sleep = true;
private int energy, patch, length, width, height, G, Xx, Xy, Ex[], Ey[], x,
y, Red, Blue, Green, t;
private Random random;
public BeaClassDemo(int a, int b, int g)
width = a;
height = b;
G = g;
public void init(int e, int p, int l, long seed)
int i;
energy = e;
patch = p;
length = l;
// 创建一个带种子的随机数生成器
random = new Random(seed);
Ex = new int[patch];
Ey = new int[patch];
Red = (int) (random.nextDouble() * 128) + 128;
Blue = (int) (random.nextDouble() * 128) + 128;
Green = (int) (random.nextDouble() * 128) + 128;
Xx = (int) (Math.random() * width / 2) + width / 4;
Xy = (int) (Math.random() * height / 2) + height / 4;
for (i = 0; i patch; i++) {
Ex[i] = (int) (Math.random() * energy) - energy / 2;
Ey[i] = (int) (Math.random() * energy * 7 / 8) - energy / 8;
public void start
t = 0;
sleep = false;
public void show(Graphics g)
if (!sleep)
if (t length)
int i, c;
double s;
Color color;
c = (int) (random.nextDouble() * 64) - 32 + Red;
if (c = 0 c 256)
Red = c;
c = (int) (random.nextDouble() * 64) - 32 + Blue;
if (c = 0 c 256)
Blue = c;
c = (int) (random.nextDouble() * 64) - 32 + Green;
if (c = 0 c 256)
Green = c;
color = new Color(Red, Blue, Green);
for (i = 0; i patch; i++)
s = (double) t / 100;
x = (int) (Ex[i] * s);
y = (int) (Ey[i] * s - G * s * s);
g.setColor(color);
g.drawLine(Xx + x, Xy - y, Xx + x, Xy - y);
if (t = length / 2)
int j;
for (j = 0; j 2; j++)
s = (double) ((t - length / 2) * 2 + j) / 100;
x = (int) (Ex[i] * s);
y = (int) (Ey[i] * s - G * s * s);
g.setColor(Color.black);
g.drawLine(Xx + x, Xy - y, Xx + x, Xy - y);
常用的编程语言。
编程语言一:C语言
C语言是世界上最流行、使用最广泛的高级程序设计语言之一。在操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。
编程语言二:java
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。
编程语言三:c++
C++这个词在中国大陆的程序员圈子中通常被读做“C加加”,而西方的程序员通常读做“C plus plus" , "CPP”。 它是一种使用非常广泛的计算机编程语言。C++是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言。
Q2: 关于java特效烟花
一个脚本 QQ空间不支持
java烟花代码注释你找个FLASH带JAVA脚本java烟花代码注释的 然后找出正确地址.
然后在QQ空间java烟花代码注释的自定义 添加模块 FLASH模块里
把地址复制上点确定 再托大到合适角度 一样有这样java烟花代码注释的效果
QQ空间代码的网站都有 百度一找一堆!
Q3: java烟花程序看不懂,求解释!
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import javax.swing.*;
public class Fireworks extends Applet implements MouseListener, Runnable {
int x, y;//记录鼠标点击的坐标
int top, point;//好像没用到
public void init() {
x = 0;
y = 0;
setBackground(Color.black);// 设置背景色为黑色
addMouseListener(this);//添加鼠标监听
}
public void paint(Graphics g) {
}
public static void main(String args[]) {
Fireworks applet = new Fireworks();
JFrame frame = new JFrame("TextAreaNew");
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {//右上角的叉
System.exit(0);
}
});
frame.add(applet, BorderLayout.CENTER);
frame.setSize(800, 400);//程序的框框大小
applet.init();
applet.start();
frame.setVisible(true);//
}
public void run() {
// 变量初始化
Graphics g1;
g1 = getGraphics();//这是画笔,得到一个画笔
int y_move, y_click, x_click;
int v;//用于计算等待的时间
x_click = x;
y_click = y;//把点击的坐标保存下来,因为其它线程会去改这两个坐标。
y_move = 400;//用来计算变动的那个点,现在是屏幕的最大高度
v = 3;
int r, g, b;
while (y_move y_click)//如果点击的位置小于最大高度。
{
g1.setColor(Color.black);//画笔设成黑色
g1.fillOval(x_click, y_move, 5, 5);//画圆,圆点在点击的X轴,程序界面的最高点,长为5,宽为5
y_move -= 5;//最高点-5
r = (((int) Math.round(Math.random() * 4321)) % 200) + 55;
g = (((int) Math.round(Math.random() * 4321)) % 200) + 55;
b = (((int) Math.round(Math.random() * 4321)) % 200) + 55;//rgb是光的三原色,这个就是烟花产生的颜色,这里定义成随机的,但在一个范围里
g1.setColor(new Color(r, g, b));//把画笔改成那个颜色
g1.fillOval(x_click, y_move, 5, 5);//画一个这样的圆
for (int j = 0; j = 10; j++) {
if (r 55)
r -= 20;
if (g 55)
g -= 20;
if (b 55)
b -= 20;
g1.setColor(new Color(r, g, b));
g1.fillOval(x_click, y_move + j * 5, 5, 5);//这一段都是改变颜色,然后画圆的
}
g1.setColor(Color.black);
g1.fillOval(x_click, y_move + 5 * 10, 5, 5);//把上一次画的彩色圆,用黑色画一遍,就能让它消失在背景里
try {
Thread.currentThread().sleep(v++);//让程序等一下,让你看到效果,不然画完的东西一下就不见了,你看不清。
} catch (InterruptedException e) {
}
}//上面这段代码是烟花的升上去的那一串东西的效果
for (int j = 12; j = 0; j--) {
g1.setColor(Color.black);
g1.fillOval(x_click, y_move + (j * 5), 5, 5);
try {
Thread.currentThread().sleep((v++) / 3);
} catch (InterruptedException e) {
}
}//让最后的那串东西的点消失
y_move = 400;
g1.setColor(Color.black);
while (y_move y_click) {
g1.fillOval(x_click - 2, y_move, 9, 5);
y_move -= 5;
}//这段不太清楚是干什么的,我把它去掉,看不出效果的变化
v = 15;
for (int i = 0; i = 25; i++) {
r = (((int) Math.round(Math.random() * 4321)) % 200) + 55;
g = (((int) Math.round(Math.random() * 4321)) % 200) + 55;
b = (((int) Math.round(Math.random() * 4321)) % 200) + 55;
g1.setColor(new Color(r, g, b));
g1.drawOval(x_click - 3 * i, y_click - 3 * i, 6 * i, 6 * i);
if (i 23) {
g1.drawOval(x_click - 3 * (i + 1), y_click - 3 * (i + 1),
6 * (i + 1), 6 * (i + 1));
g1.drawOval(x_click - 3 * (i + 2), y_click - 3 * (i + 2),
6 * (i + 2), 6 * (i + 2));
}//上面这段是画爆炸的效果
try {
Thread.currentThread().sleep(v++);//停一下,看效果
} catch (InterruptedException e) {
}
g1.setColor(Color.black);
g1.drawOval(x_click - 3 * i, y_click - 3 * i, 6 * i, 6 * i);//然后画黑圈,相当于让彩圈消失。
}
}
public void mousePressed(MouseEvent e) {//点击从这里开始~~~~~~~~~~~~~~
x = e.getX();
y = e.getY();//得到鼠标点击的坐标
Thread one = new Thread(this);//新建一个线程
one.start();//启动这个线程,到上面的run方法
one = null;//把这个线程置为空,让它执行完以后就释放
}
如果你想一下自己写要怎样写这个程序,就很容易理解这个程序了。
一直从下向上画圆,然后把下面的圆擦掉,就能得到一个向上升的烟花效果,
爆炸效果就是先画小圆再画大圆,然后擦掉小圆,再擦掉大圆。
关于java烟花代码注释和eclipse烟花代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。





