CodeBus

分享代码,一起进步~

力学:流体(Liquid)(VC版本)

这个程序原本是测试 HTML 5 效果的一个演示程序,动态效果很是漂亮。现在,这个精彩的程序经 krissi 移植到了 vc 上。 以下是完整源代码: /////////////////////////////////////////////////// // 程序名称:流体(Liquid) // 编译环境:Visual C++ 6.0 / 2010,EasyX 20120404(beta) // 原 作 品:http://spielzeugz.de/html5/liquid-particles.html (HTML5) // 移植作者:krissi <zh@easyx.cn> // 最后修改:2012-4-5 // #include <graphics.h> #include <math.h> #include <time.h> #define WIDTH 1024 // 屏幕宽 #define HEIGHT 576 // 屏幕高 #define NUM_MOVERS 600 // 小球数量 #define FRICT... [更多...]

力学:弹跳球模拟程序

本程序根据物理原理模拟一个球自由落体并持续弹跳的效果,小球只受重力影响,忽略空气阻力,反弹时能量损耗 10%。 程序源代码如下: //////////////////////////////////////////////////////////////////// // 程序名称:物理反弹球模拟程序 // 编译环境:VC6.0 / 2010,EasyX 2011惊蛰版 // 作  者:yw80@qq.com // 最后修改:2012-3-29 // #include <graphics.h> #include <conio.h> void main() { double h = 300; // 高度 double v = 0; // 速度(方向向下) double dv = 9.8 / 50; // 加速度(每 1/50 秒) // 初始化绘图窗口 initgraph(640, 480); // 画地平线 line(100, 421, 540, 421); while(!_kbhit()) { v += dv; ... [更多...]

纪念披头士摇滚乐队(Beatles)的程序(VC版本)

西班牙程序员 Roman Cortes 用纯 javascript 脚本编写了一个纪念披头士摇滚乐队(Beatles)的程序,动态效果很是漂亮。现在,这个精彩的程序经 krissi 移植到了 vc 上。以下是执行效果抓图(炫丽的动态效果还是需要您亲自编译才能看到): 由歌词渐变为头像,再变为歌词,这个精彩的转换过程需要读者亲自去体验。 完整的 VC 源代码如下: //////////////////////////////////////////////////////////////////// // 程序名称:纪念披头士摇滚乐队(Beatles) // 编译环境:VC6.0 / 2010,EasyX 2011惊蛰版 // 原 作 者:西班牙程序员 Roman Cortes // 原 程 序:http://www.romancortes.com/blog/a-tribute-to-the-beatles/ (javascript 版本) // 移植作者:krissi <zh@easyx.cn> // 最后修改:2012-3-5 // #include <graph... [更多...]

情人节的红玫瑰

2012年2月14日情人节就要来临了,西班牙程序员 Roman Cortes 用纯 javascript 脚本编写了红色玫瑰花。 现在,这个精彩的程序经 krissi 移植到了 vc 上。以下是执行效果: 这朵漂亮的玫瑰花,每一个点都是用数学算法计算出来的,没有用任何图片贴图。 完整的 vc 源代码如下: //////////////////////////////////////////////////////////////////// // 程序名称:情人节的玫瑰 // 编译环境:VC6.0 / VC2010,EasyX 2011惊蛰版 // 原 作 者:西班牙程序员 Roman Cortes // 原 程 序:http://js1k.com/2012-love/demo/1022 (javascript 版本) // 移植作者:krissi <zh@easyx.cn> // 最后修改:2012-2-13 // 注:程序中的很多精简变量名都沿用原 javascript 中的变量名。 // #include <graphics.h> #include &l... [更多...]

火焰效果模拟程序

模拟火焰效果的程序。 执行���果抓图如下: 通过修改色系,本程序可以实现红色火焰、蓝色火焰、绿色火焰三种效果,在 InitFire() 函数中取消相应行注释可以实现不同色系的火焰效果。 完整的源代码如下: /////////////////////////////////////////////////// // 程序名称:火焰模拟程序 // 编译环境:VC6.0 / VC2010,EasyX 2011惊蛰版 // 作  者:yangw80 <yw80@qq.com> // 最后修改:2012-1-21 // PS: 核心算法参考的微软范例,在此感谢。 // #include <graphics.h> #include <conio.h> #include <time.h> // 宏常量 #define WIDTH 640 #define HEIGHT 480 #define FIREWIDTH 320 #define FIREHEIGHT 180 // 全局变量 COLORREF g_Colors[193]; // 火... [更多...]

调色板动画程序(以 EasyX 平台举例)

在 Turbo C 时代的图形编程有“调色板”的概念,但在真彩色时代,调色板的概念已经不完全相同了。 EasyX 模拟了 Turbo C 的大部分功能。由于上述原因,调色板并没有实现。如果要使用调色板,可以通过 Windows GDI 函数实现。 以下范例程序演示了这一过程: (由于是动画程序,贴图无法展现效果,因此省略了贴图) /////////////////////////////////////////////////// // 程序名称:基于 EasyX 的调色板动画程序 // 编译环境:VC6.0 / VC2010,EasyX 2011惊蛰版 // 作  者:krissi <zh@easyx.cn> // 最后修改:2012-1-4 // #include <graphics.h> #include <conio.h> #include <math.h> #define WIDTH 640 #define HEIGHT 480 #define PI 3.1415926535 HPALET... [更多...]

漂亮的四叶草

前几天有网友在 QQ 群“C 语言革命”里面发了一段 Turbo C 代码,感觉蛮漂亮的,我就将代码移植到 VC + EasyX 下面(稍作了一点格式上的修改)。 执行效果如下: 完整的源代码如下: /////////////////////////////////////////////////// // 程序名称:漂亮的四叶草 // 编译环境:Visual C++ 6.0,EasyX 2011惊蛰版 // 作  者:yangw80 <yw80@qq.com> // 最后修改:2011-10-14 // 注:源程序是网友发在 QQ 群“C 语言革命”里面的 Turbo C 代码,我修改的 // #include <graphics.h> #include <math.h> #include <conio.h> #define PI 3.1415926535 void main(void) { // 初始化绘图窗口 initgraph(640, 480); // 创建绘图窗口 ... [更多...]

一束漂亮的花

又是一个回忆。。。 我最早是抱着一台“学习机”学的 basic,之后第一次在电脑上输入的程序,就是这个效果。不过那时候的显示器是单色的,书上的代码也没有设置颜色,所以当时把程序输入 GW-BASIC 后,输出的整个图案都是墨绿色的。哦,顺便贴一下书的封皮照片:   我一直记得我还留着这本书的,上次回家偏偏没找到,然后网上到处搜也没搜到,恰好 easyx 群里的阿里说他们学校图书馆有这本书,于是借来帮我拍了几张照片,在这里表示感谢。 感慨完了,说正题吧。我把原来的 basic 程序移植到了 vc + easyx 下,并简单的加了些颜色,执行效果如下: 完整的代码如下: /////////////////////////////////////////////////// // 程序名称:一束漂亮的花 // 编译环境:Visual C++ 6.0 / 2010,EasyX 2011惊蛰版 // 作  者:yangw80 <yw80@qq.com> // 最后修改:2011-9-29 // #include <graphics.h>... [更多...]

图片滤镜系列:波浪线叠加效果

我念初中的时候买过一盘国外原版的磁带:贝多芬第九交响乐《合唱》。磁带很是精美,硬纸壳压出了立体的金色贝多芬头像,并且还有第二个封面,是叠加在金色波浪线上的贝多芬头像。这个波浪线叠加的效果很有趣,我一直想写个程序实现这种效果,无奈总是抽不出时间,今天可算把这件事情给做了。 只是由于屏幕分辨率太低,还是无法和印刷的效果相媲美。而且,由于磁带已经找不到了,我只是按照我想象中的样子做的。 我就不弄贝多芬的头像了,换了另一个重要人物的头像照片做图片源,程序处理后的效果如下: 全部源代码如下: 注:src.jpg 就是源图片的名字,该图片的大小必须是 640 x 480,另外建议用简单的背景,大一点的头像,否则效果不是很理想。

高等数学图形:玫瑰曲线

在极坐标系中,以下方程表示的曲线称为玫瑰曲线: r = sin ( k θ )  或  r = cos ( k θ ) 当 k 是奇数时,玫瑰曲线有 k 个花瓣;当 k 是偶数时,玫瑰曲线有 2k 个花瓣。执行效果如下图: 可以按 A-Z 和 a-z 调整参数,绘制不同的玫瑰曲线。例如,k = n / d = 2 / 1,就是四叶玫瑰曲线,k = n / d = 3 / 1,就是三叶玫瑰曲线。 完整源代码如下: //////////////////////////////////////////// // 程序名称:高等数学图形:玫瑰曲线 // 编译环境:Visual C++ 6.0 / 2010,EasyX 2011惊蛰版 // 程序编写:yangw80 <yw80@qq.com> // 最后更新:2011-7-11 // #include <graphics.h> #include <stdio.h> #include <conio.h> #include <math.h> #defi... [更多...]