#include #include #include #include #include #include "..\libs\make_bot\make_bot.h" #include "sv_graph.h" extern void textxy(int x, int y, char *text); void Circulos(int PosX, int PosY, int RadioX, int RadioY, int Velocidad); void Circulos2(int PosX, int PosY, int RadioX, int RadioY, int Velocidad); void Circulos3(int PosX, int PosY, int RadioX, int RadioY, int Velocidad); void Acerca_de(void){ struct boton Acerca; Acerca.up = 140; Acerca.down = 380; Acerca.left = 220; Acerca.right = 425; ImprimeBoton (1, GRIS_C, BLANCO, GRIS_O, Acerca); Acerca.up = 145; Acerca.down = 375; Acerca.left = 225; Acerca.right = 420; ImprimeBoton (1, GRIS_C, GRIS_O, BLANCO, Acerca); textxy(240, 170, "Programa realizado por"); textxy(240, 210, " Jos‚ David Guill‚n"); // Circulos(322, 295, 50, 50, 5); // getch(); /*2*/ Circulos3(322, 295, 50, 50, 5); getch(); } void Circulos(int PosX, int PosY, int RadioX, int RadioY, int Velocidad){ // Circulo con apariencia de 3D, por: Jos‚ David Guill‚n int x=RadioX, y=0, oldx=RadioX, giro = 0, vez = 0, ciclo = 1, Angulo = 0; do{ setcolor(GRIS_C); ellipse(PosX, PosY, 0+ Angulo, 360+ Angulo, abs(oldx), RadioY ); ellipse(PosX, PosY, 0/*+*/- Angulo, 360/*+*/- Angulo, RadioX, abs(oldx) ); if(giro==1)/*{*/ setcolor(NEGRO); else setcolor(BLANCO); /// ellipse(PosX, PosY, 90+ Angulo, 270+ Angulo, abs(x), /*abs(y)*/50 ); ellipse(PosX, PosY, 0+ Angulo, 90+ Angulo, abs(x), RadioY ); ellipse(PosX, PosY, 180- Angulo, 270- Angulo, abs(x), RadioY ); /// ellipse(PosX, PosY, 0+ Angulo, 180+ Angulo, /*abs(y)*/50, abs(x) ); ellipse(PosX, PosY, 90/*+*/- Angulo, 180/*+*/- Angulo, RadioX, abs(x)); ellipse(PosX, PosY, 270/*+*/- Angulo, 360/*+*/- Angulo, RadioX, abs(x) ); if(giro==1)/*{*/ setcolor(BLANCO); else setcolor(NEGRO); /// ellipse(PosX, PosY, 270+ Angulo, 90+ Angulo, abs(x), /*abs(y)*/50 ); ellipse(PosX, PosY, 90+ Angulo, 180+ Angulo, abs(x), RadioY ); ellipse(PosX, PosY, 270+ Angulo, 360+ Angulo, abs(x), RadioY ); /// ellipse(PosX, PosY, 180+ Angulo, 360+ Angulo, /*abs(y)*/50, abs(x) ); ellipse(PosX, PosY, 0/*+*/- Angulo, 90/*+*/- Angulo, RadioX, abs(x) ); ellipse(PosX, PosY, 180/*+*/- Angulo, 270/*+*/- Angulo, RadioX, abs(x) ); oldx = x; x--; if(x<=-(RadioX-1) ) x=RadioX; y--; if(y<=-(RadioY-1) ) y=RadioY; if(ciclo == 0 && x == RadioX ) { ciclo = 1; vez = 0; } else if(ciclo == 1 && x == RadioX ) { ciclo = 0; vez = 1; } if(vez==0){ if(x<0) giro=1; else giro=0; } if(vez==1){ if(x<0) giro=0; else giro=1; } delay(20); Angulo+= Velocidad; if( Angulo== 360 ) Angulo=0; }while(!kbhit()); } void Circulos2(int PosX, int PosY, int RadioX, int RadioY, int Velocidad){ // Circulo con apariencia de 3D, por: Jos‚ David Guill‚n int x=RadioX, y=0, oldx=RadioX, oldx2 = RadioX, oldx3 = RadioX, giro = 0, vez = 0, ciclo = 1, Angulo = 0; do{ setcolor(GRIS_C); ellipse(PosX, PosY, 0+ Angulo, 360+ Angulo, abs(oldx), RadioY ); ellipse(PosX, PosY, 0/*+*/- Angulo, 360/*+*/- Angulo, RadioX, abs(oldx) ); if(giro==1)/*{*/ setcolor(NEGRO); else setcolor(BLANCO); /// ellipse(PosX, PosY, 90+ Angulo, 270+ Angulo, abs(x), /*abs(y)*/50 ); ellipse(PosX, PosY, 0+ Angulo, 90+ Angulo, abs(x), RadioY ); ellipse(PosX, PosY, 180- Angulo, 270- Angulo, abs(x), RadioY ); /// ellipse(PosX, PosY, 0+ Angulo, 180+ Angulo, /*abs(y)*/50, abs(x) ); ellipse(PosX, PosY, 90/*+*/- Angulo, 180/*+*/- Angulo, RadioX, abs(x)); ellipse(PosX, PosY, 270/*+*/- Angulo, 360/*+*/- Angulo, RadioX, abs(x) ); if(giro==1)/*{*/ setcolor(BLANCO); else setcolor(NEGRO); /// ellipse(PosX, PosY, 270+ Angulo, 90+ Angulo, abs(x), /*abs(y)*/50 ); ellipse(PosX, PosY, 90+ Angulo, 180+ Angulo, abs(x), RadioY ); ellipse(PosX, PosY, 270+ Angulo, 360+ Angulo, abs(x), RadioY ); /// ellipse(PosX, PosY, 180+ Angulo, 360+ Angulo, /*abs(y)*/50, abs(x) ); ellipse(PosX, PosY, 0/*+*/- Angulo, 90/*+*/- Angulo, RadioX, abs(x) ); ellipse(PosX, PosY, 180/*+*/- Angulo, 270/*+*/- Angulo, RadioX, abs(x) ); oldx = oldx2; oldx2 = oldx3; oldx3 = x; x--; if(x<=-(RadioX-1) ) x=RadioX; y--; if(y<=-(RadioY-1) ) y=RadioY; if(ciclo == 0 && x == RadioX ) { ciclo = 1; vez = 0; } else if(ciclo == 1 && x == RadioX ) { ciclo = 0; vez = 1; } if(vez==0){ if(x<0) giro=1; else giro=0; } if(vez==1){ if(x<0) giro=0; else giro=1; } delay(20); Angulo+= Velocidad; if( Angulo== 360 ) Angulo=0; }while(!kbhit()); } void Circulos3(int PosX, int PosY, int RadioX, int RadioY, int Velocidad){ // Circulo con apariencia de 3D, por: Jos‚ David Guill‚n int x=RadioX, y=0, oldx=RadioX, oldx2 = RadioX, oldx3 = RadioX, giro = 0, vez = 0, ciclo = 1, Angulo = 0; do{ setcolor(GRIS_C); ellipse(PosX, PosY, 0+ Angulo, 360+ Angulo, abs(oldx), RadioY ); ellipse(PosX, PosY, 0/*+*/- Angulo, 360/*+*/- Angulo, RadioX, abs(oldx) ); if(giro==1)/*{*/ setcolor(NEGRO); else setcolor(BLANCO); /// ellipse(PosX, PosY, 90+ Angulo, 270+ Angulo, abs(x), /*abs(y)*/50 ); ellipse(PosX, PosY, 0+ Angulo, 90+ Angulo, abs(x), RadioY ); ellipse(PosX, PosY, 180- Angulo, 270- Angulo, abs(x), RadioY ); /// ellipse(PosX, PosY, 0+ Angulo, 180+ Angulo, /*abs(y)*/50, abs(x) ); ellipse(PosX, PosY, 90/*+*/- Angulo, 180/*+*/- Angulo, RadioX, abs(x)); ellipse(PosX, PosY, 270/*+*/- Angulo, 360/*+*/- Angulo, RadioX, abs(x) ); if(giro==1)/*{*/ setcolor(BLANCO); else setcolor(NEGRO); /// ellipse(PosX, PosY, 270+ Angulo, 90+ Angulo, abs(x), /*abs(y)*/50 ); ellipse(PosX, PosY, 90+ Angulo, 180+ Angulo, abs(x), RadioY ); ellipse(PosX, PosY, 270+ Angulo, 360+ Angulo, abs(x), RadioY ); /// ellipse(PosX, PosY, 180+ Angulo, 360+ Angulo, /*abs(y)*/50, abs(x) ); ellipse(PosX, PosY, 0/*+*/- Angulo, 90/*+*/- Angulo, RadioX, abs(x) ); ellipse(PosX, PosY, 180/*+*/- Angulo, 270/*+*/- Angulo, RadioX, abs(x) ); oldx = oldx2; oldx2 = oldx3; oldx3 = x; x--; if(x<=-(RadioX-1) ) x=RadioX; y--; if(y<=-(RadioY-1) ) y=RadioY; if(ciclo == 0 && x == RadioX ) { ciclo = 1; vez = 0; } else if(ciclo == 1 && x == RadioX ) { ciclo = 0; vez = 1; } if(vez==0){ if(x<0) giro=1; else giro=0; } if(vez==1){ if(x<0) giro=0; else giro=1; } delay(20); Angulo+= Velocidad; if( Angulo== 360 ) Angulo=0; //////////////////////////////////////////////////////// //////////////////////////////////////////////////////// giro = 1; //////////////////////////////////////////////////////// //////////////////////////////////////////////////////// }while(!kbhit()); }