Animate moving car using C graphics
C program to implement moving car animation
#include <conio.h>
#include <graphics.h>
#include <dos.h>
int main() {
/* request auto detection */
int gdriver = DETECT, gmode, err;
int i, maxx, midy;
/* initialize graphic mode */
initgraph(&gdriver, &gmode, "C:/TURBOC3/BGI");
err = graphresult();
if (err != grOk) {
/* error occurred */
printf("Graphics Error: %s\n",
grapherrormsg(err));
return 0;
}
/* max position in x-axis */
maxx = getmaxx();
/* mid position in y-axis */
midy = getmaxy() / 2;
for (i = 0; i < maxx - 125; i = i + 3) {
/* clears the graphic screen */
cleardevice();
/* draw a white road */
setcolor(WHITE);
line(0, midy + 37, maxx, midy + 37);
/* body of the car */
setcolor(YELLOW);
setfillstyle(SOLID_FILL, YELLOW);
line(0 + i, midy + 23, 0 + i, midy);
line(0 + i, midy, 20 + i, midy);
line(20 + i, midy, 40 + i, midy - 20);
line(40 + i, midy - 20, 80 + i, midy - 20);
line(80 + i, midy - 20, 100 + i, midy);
line(100 + i, midy, 120 + i, midy);
line(120 + i, midy, 120 + i, midy + 23);
line(0 + i, midy + 23, 18 + i, midy + 23);
arc(30 + i, midy + 23, 0, 180, 12);
line(42 + i, midy + 23, 78 + i, midy + 23);
arc(90 + i, midy + 23, 0, 180, 12);
line(102 + i, midy + 23, 120 + i, midy + 23);
line(28 + i, midy, 43 + i, midy - 15);
line(43 + i, midy - 15, 57 + i, midy - 15);
line(57 + i, midy - 15, 57 + i, midy);
line(57 + i, midy, 28 + i, midy);
line(62 + i, midy - 15, 77 + i, midy - 15);
line(77 + i, midy - 15, 92 + i, midy);
line(92 + i, midy, 62 + i, midy);
line(62 + i, midy, 62 + i, midy - 15);
floodfill(5 + i, midy + 22, YELLOW);
setcolor(DARKGRAY);
/* draw wheels of the car */
if (i % 2 == 0) {
setfillstyle(SLASH_FILL, DARKGRAY);
} else {
setfillstyle(BKSLASH_FILL, DARKGRAY);
}
circle(30 + i, midy + 25, 9);
circle(90 + i, midy + 25, 9);
floodfill(30 + i, midy + 25, DARKGRAY);
floodfill(90 + i, midy + 25, DARKGRAY);
delay(250);
}
getch();
/* deallocate memory allocated for graphic screen */
closegraph();
return 0;
}
This comment has been removed by the author.
ReplyDeleteNice Program, it helped me a lot to understand moving car animation program in C graphics.
ReplyDelete