本文目录一览:
- 1、想用c#做一个烟花的动画,用窗口还是程序台?思路是什么,怎么写?求大神指教我是初学者,什么都不懂
- 2、我的世界烟花怎么用命令方块生成有颜色和形状的烟花
- 3、c语言放烟花代码
- 4、如何编程?(具体步骤)
想用c#做一个烟花的动画,用窗口还是程序台?思路是什么,怎么写?求大神指教我是初学者,什么都不懂
控制台肯定不行。窗口程序至少属于可视化界面。
初学者别搞这个了,你要做的这个可以用其他软件更方便实现。
非要用C#的winform来做动画,研究一下System.Drawing吧。
至于编程思路可以简单给你讲一个:
定义个烟花类:
属性:
烟花的颜色【Color】,
烟花当前位置【Point】,
飞行方向【int】,
飞行轨迹【Point集合】,
烟花尾巴长度【int】,
爆炸生成烟花数量【int】
方法:
烟花爆炸()——如果爆炸生成的烟花数量设置是0,那么就不爆炸;否则安装数量new 新的烟花出来,360°除以烟花数量设置烟花方向。
烟花飞行()——飞行轨迹记录之前的位置,通过飞行方向计算当前位置,通过尾巴长度颜色属性进行图像刷新。
。。。。。。
我的世界烟花怎么用命令方块生成有颜色和形状的烟花
摘自乐游网:
命令方块自定义烟花的方法:
这个不是刷烟花物品,而是直接从指令方块里放出烟花。好处是烟花可以全自定义。
这是2个烟花效果,是2个不同的指令方块刷出的。颜色什么可以全部自定义。
进入教程。首先是教大家如何刷出一个最基础的烟花。指令是:
/summon FireworksRocketEntity ~ ~1 ~
复制代码
大家可以把这条指令打入指令方块然后激活,但只会刷出一个烟花的样子,而不会产生任何爆炸,因为指令里还未调制任何爆炸效果。基础的/summon指令我就不多说了,大家只要记住FireworksRocketEntity就好了。之后就是加入点NBT,让烟花拥有自定义爆炸效果。指令:
/summon FireworksRocketEntity ~ ~1 ~
{LifeTime:30,FireworksItem:{id:401,Count:1,tag:{Fireworks:
{Explosions:[{Flicker:10,Trail:1,Type:3,Colors:[0],FadeColors:[0]}]}}}}
当大家把这条指令打入指令方块并且激活后,会刷出一个黑色的苦力怕的脸。接下来来讲解下NBT:
LifeTime:烟花的飞行延迟,也就是烟花飞上去没爆炸前的时间。调成20就是一秒。
FireworksItem:{id:401,Count:1,tag:{Fireworks::这是固定要打的。意思就是让指令方块知道是烟花。
Explosions:烟花的爆炸效果。这行是重点,控制烟花的颜色,效果,花样什么的。
Flicker:烟花即将结束后的延迟。这行可以随便写,没延迟就是0。大家可以写着看看效果,就知道具体意思了。
Trail:烟花内部的效果。如果内部是空心的,就写0,内部有烟花效果,就是1。同Flicker,大家可以调的自己看看效果。
Type:烟花爆炸效果种类,一共有5种。帖子下面会解释。
Colors:烟花的颜色。这个是用RGB转换DEC,较复杂。帖子下面会讲。
FadeColors:烟花即将结束后转换的颜色。原理同Colors。
虽然有很多的NBT,但是会英文就很简单了。Flicker和Trail较难解释,需要玩家自己实验。
接下来说说烟花效果,也就是Type里面写的。一共有5种,所以后面就写0-4。
种类:
0 - 小球爆炸。
1 - 大球爆炸。
2 - 星型爆炸。
3 - 苦力怕脸型爆炸。
4 - 扩散型爆炸。
当然大家也可以上Wiki看烟花效果。已上图的效果都带有Flicker:10和Trail:1。
之后是教大家如何自定义烟花颜色,也就是Colors和FadeColors这2个NBT用的。前面我写的都是0,也就是黑色。计算颜色有一种特殊的公式:
B+256*G+65536*R = x
公式里的RGB就是颜色属性。R是红色,G是绿色,B是蓝色。大家可以用Photoshop之类的获得一个颜色的RGB值。
之后举个例子:如果要一个绿色的烟火,那就是红色和蓝色都是0,绿色是255 (颜色最高属性是255),那么公式就是:
0+256*255+65536*0 = 65280
于是知道数值了后就可以写入了。比如:Colors:[65280],FadeColors:[0]。大家看到本人FadeColors后面写的还是0,因为本人要让烟花首先是绿色,然后再转换成黑色。当然,如果要全都是绿的话就2个全部写65280。之后算法就一样了。但是黑色的就是0,白色的话就是RGB都是255,算出来是。不知道颜色的RGB的话,那就可以用Photoshop或者Windows系统自带的画图,可以看出RGB属性。发几个常用的:
蓝色:255
白色:
黑色:0
绿色:65280
红色:
注意:如果要多个颜色,直接括号分开就好了。比如:Colors:[255,]。
之后是如果同时刷出多个爆炸效果,也就是同一个烟花有多个效果。指令:
/summon FireworksRocketEntity ~ ~1 ~
{LifeTime:30,FireworksItem:{id:401,Count:1,tag:{Fireworks:
{Explosions:[{Flicker:10,Trail:1,Type:3,Colors:[0],FadeColors:[0]},
{Flicker:10,Trail:0,Type:1,Colors:[],FadeColors:[]}]}}}}
大家看见,只要把Explosion后面的NBT重复就好了。当大家分解完我这条指令后,效果应该是:黑色的苦力怕脸,外面包着白色的球体。当然,想有多少爆炸效果就有多少爆炸效果,都是复制粘贴的活。
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;
}
如何编程?(具体步骤)
设备:电脑
你既然喜欢编程,就应该认认真真的学习一门语言,学习微软的就先从VB开始,VB是比较好的入门语言,可视化的,比较简单,是非常好的入门语言。书籍最少应该准备两本,不可能一本书籍会包含VB的所有内容,在看书的时候,可以交叉的看,一本书籍中没有讲到的内容可以在另一本中看到,这样对学习是很有好处的,也能保证所学知识的完整性。学编程是一个很漫长的过程,不要着急,要理论与实践想结合,例程书籍也是很重要的,看源代码对学习也是很有帮助的,等你学完这门VB语言之后,学习别的语言是非常简单,可以尝试C语言,按照C——C++——VC的顺序学习,有助于知识的连贯性,我也希望你能学好的。
或者学习Delphi,入门较为简单类似于VB,但比VB强大,即可作为入门又能做强、做大
怎样学编程
1.明确学习目的
学习编程对大多数IT业人员来说都是非常有用的。学编程,做一名编程人员,从个人角度讲,可以解决在软件使用中所遇到的问题,改进现有软件,可以为自己找到一份理想的工作添加重要得砝码,有利于在求职道路上谋得一个好的职位;从国家的角度,可以为中国的软件产业做出应有的贡献,一名优秀的程序员永远是被争夺的对象。学习编程还能锻炼思维,使我们的逻辑思维更加严密;能够不断享受到创新的乐趣,将一直有机会走在高科技的前沿,因为程序设计本身是一种创造性的工作。知识经济时代给我们带来了无限的机会,要想真正掌握计算机技术,并在IT行业里干出一番事业来,有所作为,具有一定的编程能力是一个基本条件和要求。
2.打好基础
学编程要具备一定的基础,总结之有以下几方面:
(1)数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。
(2)逻辑思维能力的培养学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。
(3)选择一种合适的入门语言 面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类: 1)本地开发应用软件开发的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;数据库开发工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。 2)跨平台开发开发工具如 Java 等。 3)网络开发对客户端开发工具如:Java Script 等;对服务器开发工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的环境下几种开发工具中 VB 法简单并容易理解,界面设计是可设化的,易学、易用。选 VB 作为入门的方向对出学者是较为适合的。
3. 注意理解一些重要概念
一本程序设计的书看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三,触类旁通。
4.掌握编程思想
学习一门语言或开发工具,语法结构、功能调用是次要的,最主要是学习它的思想。例如学习 VC 就要学习 Windows 的内在机理、什么是线程......;学习 COM 就要知道 VTALBE 、类厂、接口、idl......,关键是学一种思想,有了思想,那么我们就可以触类旁通。
5.多实践、多交流
掌握编程思想必须在编程实际工作中去实践和体会。编程起步阶段要经常自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。这就要多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。亲自动手进行程序设计是创造性思维应用的体现,也是培养逻辑思维的好方法。
6.养成良好的编程习惯
编程入门不难,但入门后不断学习是十分重要的,相对来说较为漫长。在此期间要注意养成一些良好的编程习惯。编程风格的好坏很大程度影响程序质量。良好的编程风格可以使程序结构清晰合理,且使程序代码便于维护。如代码的缩进编排、变量命令规则的一致性、代码的注释等。
7.上网学编程
在网上可以学到很多不同的编程思想、方法、经验和技巧,有大量的工具和作品及相关的辅导材料供下载。例如网站“编程课堂”()主要以 VB 和 Delph;教学和交流为主,提供大量实用技巧;网站“现在时编程学园”()是专门介绍C、VC、VB、Delphi 等的综合编程网站;网站“ VB 编程乐园 ”()提供内容丰富而且实用的编程技术文章、精选控件、源代码下载、计算机考试、相关软件以及编程书籍推荐等等。
8.加强计算机理论知识的再学习
学编程是符合“理论→实践→再理论→再实践”的一个认识过程。一开始要具有一定的计算机理论基础知识,包括编程所需的数学基础知识,具备了入门的条件,就可以开始编程的实践,从实践中可以发现问题需要加强计算机理论知识的再学习。程序人人皆可编,但当你发现编到一定程度很难再提高的时候,就要回头来学习一些计算机科学和数学基础理论。学过之后,很多以前遇到的问题都会迎刃而解,使人有豁然开朗之感。因此在学习编程的过程中要不断地针对应用中的困惑和问题深入学习数据结构、算法、计算机原理、编译原理、操作系统原理、软件工程等计算机科学的理论基础和数理逻辑、代数系统、图论、离散数学等数学理论基础知识。这样经过不断的学习,再努力地实践,编程水平一定会不断提高到一个新高度。