28 மே, 2014

Moving Circle..!!! Using C

Posted by Anto Navis

                      

#include<stdio.h>
#include<conio.h>
#include<graphics.h>
#include<math.h>
#include<dos.h>

int l=1;

void ddaline(int x1,int y1,int x2,int y2)
{

int s,dx,dy,m;
float xi,yi,x,y;

dx=x2-x1;
dy=y2-y1;

if(abs(dx)>abs(dy))
s=abs(dx);
else
s=abs(dy);

xi=dx/(float)s;
yi=dy/(float)s;

x=x1;
y=y1;

putpixel(x1+0.5,y1+0.5,15);

for(m=0;m<s;m++)
{
x+=xi;
y+=yi;
putpixel(x+0.5,y+0.5,15);
}
}



void plotpoints1(int x,int y,int cx,int cy)
{
putpixel(cx+x,cy+y,15);
putpixel(cx-x,cy-y,15);
putpixel(cx-y,cy+x,15);
putpixel(cx+y,cy-x,15);
if(l%20==0)
{
ddaline(cx-x,cy-y,cx+x,cy+y);
ddaline(cx-y,cy+x,cx+y,cy-x);
}
l++;
}

void plotpoints2(int x,int y,int cx,int cy)
{

putpixel(cx-x,cy+y,15);
putpixel(cx+x,cy-y,15);
putpixel(cx+y,cy+x,15);
putpixel(cx-y,cy-x,15);
if(l%20==0)
{
ddaline(cx+x,cy-y,cx-x,cy+y);
ddaline(cx-y,cy-x,cx+y,cy+x);
}
l++;
}


void mcircle(int cx,int cy,int r)
{
int x=0,y,p;

y=r;
p=1-r;


while(x<y)
{
plotpoints1(x,y,cx,cy);
x++;
if(p<0)
p+=2*x+1;
else
{
y--;
p+=2*(x-y)+1;
}
}



x=y+1;
while(abs(x)>0)
{
plotpoints2(x,y,cx,cy);
x--;
if(p>=0)
p =p-2*x-1;
else
{
y++;
p=p-2*(x-y)-1;
}
}
}

void main()
{
int gd=DETECT,gm=DETECT,i;
initgraph(&gd,&gm,"c:\\tc\\bgi");

i=0;

while(i<300)
{
cleardevice();
mcircle(100+(i++),200,100);
delay(90);
i++;
}
getch();
}


If u want this code mail me i will send u.....


------------------------------------------------------------------------------------------------------------------------
எமது தளத்தில் விளம்பரம் செய்ய விரும்புபவர்கள் ( antonavis713@gmail.com ) என்ற Email மூலம் தொடர்பு கொள்ளுங்கள். ( குறைந்த கட்டணத்தில்.)

* நண்பர்களே இப்பதிவு உங்களக்கு பிடித்திருந்தால் உங்களது கருத்துக்களை மறக்காமல் தெரிவிக்கவும். 

>>> Facebook Page பக்கத்தில் Like பண்ணாதவர்கள்  கணினி தொழில்நுட்பம் Pageல் லைக் செய்திடுங்கள்.



>>> Facebook Group  இல் இணையாதவர்கள் கணினி தொழில்நுட்பம் Group இல் இணைந்து கொள்ளுங்கள்.


0 comments:

கருத்துரையிடுக

பிரபலமான இடுகைகள்