Last active
December 17, 2015 07:09
-
-
Save vertrigo/5570293 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
#include <conio.h> | |
#include <stdlib.h> | |
#include <graphics.h> | |
#include <dos.h> | |
class gr_init | |
{ | |
public: | |
gr_init(int driver=0) | |
{ | |
*gd=driver; | |
initgraph(gd,gm,"c:\\TurboC3\\BGI"); | |
if (graphresult() !=0 ) {printf("Error!'");abort();} | |
} | |
~gr_init() | |
{ | |
closegraph(); | |
} | |
private: | |
int *gd,*gm; | |
}; | |
class gr_obj | |
{ | |
public: | |
gr_obj(int col=7) { _color=col; } | |
virtual void draw()=0; | |
int color() { return _color; } | |
void show() { setcolor(color()); draw(); } | |
void hide() | |
{ | |
cback=getcolor(); | |
setcolor(getbkcolor()); | |
draw(); | |
setcolor(color()); | |
} | |
private: | |
int _color,cback; | |
}; | |
class krug: public gr_obj | |
{ | |
public: | |
krug(int xc=0, int yc=0, int rad=0, int col=7): gr_obj(col) | |
{ | |
r=rad; | |
show(); | |
setpx(xc); | |
setpy(yc); | |
} | |
~krug() { hide(); } | |
int getpx() { return x; } | |
int getpy() { return y; } | |
int getrad() { return r; } | |
void setpx(int px) { x=px; } | |
void setpy(int py) { y=py; } | |
void setrad(int rad) { r=rad; } | |
void draw(){ circle(getpx(),getpy(),getrad()); } | |
private: | |
int r,x,y; | |
}; | |
void main() | |
{ | |
gr_init gr(0); | |
krug kr(180,230,70); | |
krug kr2(420,230,70); | |
for (int i = 1; i < 30; i++) | |
{ | |
if (i%2 == 0) | |
{ | |
kr.hide(); | |
} | |
else | |
{ | |
kr.show(); | |
} | |
if (i%2 != 0 && i != 29) | |
{ | |
kr2.hide(); | |
} | |
else | |
{ | |
kr2.show(); | |
} | |
delay(70); | |
} | |
getch(); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
#include <conio.h> | |
#include <stdlib.h> | |
#include <graphics.h> | |
#include <dos.h> | |
class gr_init | |
{ | |
public: | |
gr_init(int driver=0); | |
~gr_init(); | |
private: | |
int *gd,*gm; | |
}; | |
gr_init::gr_init(int driver) | |
{ | |
*gd=driver; | |
initgraph(gd,gm,"c:\\TurboC3\\BGI"); | |
if (graphresult() !=0 ) {printf("Error!'");abort();} | |
} | |
gr_init::~gr_init() | |
{ | |
closegraph(); | |
} | |
class gr_obj | |
{ | |
public: | |
gr_obj(int col=7); | |
virtual void draw() = 0; | |
int gr_obj::color() { return _color; } | |
void show(); | |
void hide(); | |
private: | |
int _color,cback; | |
}; | |
gr_obj::gr_obj(int col) | |
{ | |
_color=col; | |
} | |
void gr_obj::show() | |
{ | |
setcolor(color()); draw(); | |
} | |
void gr_obj::hide() | |
{ | |
cback=getcolor(); | |
setcolor(getbkcolor()); | |
draw(); | |
setcolor(color()); | |
} | |
class krug: public gr_obj | |
{ | |
public: | |
krug(int xc=0, int yc=0, int rad=0, int col=7); | |
~krug() { hide(); } | |
int getpx() { return x; } | |
int getpy() { return y; } | |
int getrad() { return r; } | |
void setpx(int px) { x=px; } | |
void setpy(int py) { y=py; } | |
void setrad(int rad) { r=rad; } | |
void draw(); | |
private: | |
int r,x,y; | |
}; | |
krug::krug(int xc, int yc, int rad, int col): gr_obj(col) | |
{ | |
r=rad; | |
show(); | |
setpx(xc); | |
setpy(yc); | |
} | |
void krug::draw() | |
{ | |
circle(getpx(),getpy(),getrad()); | |
} | |
void main() | |
{ | |
gr_init gr(0); | |
krug kr(180,230,70); | |
krug kr2(420,230,70); | |
for (int i = 1; i < 30; i++) | |
{ | |
if (i%2 == 0) | |
{ | |
kr.hide(); | |
} | |
else | |
{ | |
kr.show(); | |
} | |
if (i%2 != 0 && i != 29) | |
{ | |
kr2.hide(); | |
} | |
else | |
{ | |
kr2.show(); | |
} | |
delay(70); | |
} | |
getch(); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment