画一些彩色点

来源:互联网 发布:距离刷枪软件 编辑:程序博客网 时间:2024/06/02 22:27

/*2007-6-20  画一些彩色点  winTC测试*/
#include <DOS.H>
#include<graphics.h>
#include<stdlib.h>
#include<math.h>
#define maxcount 100
#define distance 30
#define CR 1
main()
{
union REGS r;
int dr=DETECT,mode=0;
int mx,my,mc;
int i, color;
double fx,fy,force=0;
double x, y, s;
int a, b;
static int inc = 0;

initgraph(&dr,&mode,"");

r.x.ax=0;
int86(0X33,&r,&r);

while (!kbhit())
{
r.x.ax=3;
int86(0x33,&r,&r); /*获取鼠标信息*/
mx=r.x.cx;   /*x坐标*/
my=r.x.dx;   /*y坐标*/
mc=r.x.bx;
if (mc == 1) /*单击左键*/
{
    cleardevice();
    outtextxy(getmaxx()/2-10, getmaxy()/2-10, " I love you ");
    inc = 0;
    continue;
}
inc++;
if (inc == 500)
{
    cleardevice();
    inc = 0;
}
for (i=0;i<maxcount;i++)
{
    x=random(640);
    y=random(480);
    fx=mx-x;
    fy=my-y;
    s=sqrt(fx*fx+fy*fy);
    if (s>distance+inc)
    {
        i--;
        continue;
    }
    color = random(16)+1;
    setcolor(color);
    setfillstyle(1,color);    /*设置填充样式和颜色*/
    fillellipse(x,y,CR,CR);  /*画出并填充一椭圆,第一个CR为x方向半径,第二个为y方向半径*/
}
}
closegraph();
}

 

原创粉丝点击