En gráficos por computadora, use graphics.h que proporciona funciones directas para dibujar diferentes formas coordinadas (como círculo, rectángulo, etc.). Al usar estas funciones, podemos dibujar diferentes objetos como automóviles, cabañas, árboles, etc. En este programa, dibujaremos un automóvil en movimiento usando líneas y círculos.
Funciones utilizadas en el programa:
- delay(n): esta función se utiliza para retener la salida del programa durante un pequeño período de tiempo, ya que el procesamiento es muy rápido, así que utilícela para ver el resultado.
- setcolor(n): una función del archivo de encabezado graphics.h que establece el color del puntero (cursor). Hay algunos colores predefinidos en los gráficos por computadora. Aquí n es el número de color.
- línea (x1, y1, x2, y2): una función del archivo de encabezado graphics.h que dibuja una línea con (x1, y1) como la primera coordenada de la línea y (x2, y2) como la segunda coordenada de la línea.
- circle(x, y, r): una función del archivo de encabezado graphics.h que dibuja un círculo con centro (x, y) y radio r.
Ejemplo 1: este ejemplo crea un automóvil en movimiento sin utilizar el método cleardevice().
C++
// C program to draw a moving car. This // program run in gcc compiler having // graphics.h library installed #include <graphics.h> #include <stdio.h> // Function to draw moving car void draw_moving_car(void) { int i, j = 0, gd = DETECT, gm; // Passed three arguments to initgraph // function to initialize graphics mode initgraph(&gd, &gm, ""); for (i = 0; i <= 420; i = i + 10) { // Set color of car as red setcolor(RED); // Thease lines for bonnet and // body of car line(0 + i, 300, 210 + i, 300); line(50 + i, 300, 75 + i, 270); line(75 + i, 270, 150 + i, 270); line(150 + i, 270, 165 + i, 300); line(0 + i, 300, 0 + i, 330); line(210 + i, 300, 210 + i, 330); // For left wheel of car circle(65 + i, 330, 15); circle(65 + i, 330, 2); // For right wheel of car circle(145 + i, 330, 15); circle(145 + i, 330, 2); // Line left of left wheel line(0 + i, 330, 50 + i, 330); // Line middle of both wheel line(80 + i, 330, 130 + i, 330); // Line right of right wheel line(210 + i, 330, 160 + i, 330); delay(100); // To erase previous drawn car, draw // the whole car at same position // but color using black setcolor(BLACK); // Lines for bonnet and body of car line(0 + i, 300, 210 + i, 300); line(50 + i, 300, 75 + i, 270); line(75 + i, 270, 150 + i, 270); line(150 + i, 270, 165 + i, 300); line(0 + i, 300, 0 + i, 330); line(210 + i, 300, 210 + i, 330); // For left wheel of car circle(65 + i, 330, 15); circle(65 + i, 330, 2); // For right wheel of car circle(145 + i, 330, 15); circle(145 + i, 330, 2); // Line left of left wheel line(0 + i, 330, 50 + i, 330); // Line middle of both wheel line(80 + i, 330, 130 + i, 330); // Line right of right wheel line(210 + i, 330, 160 + i, 330); } getch(); closegraph(); } // Driver code int main() { draw_moving_car(); return 0; }
Producción:
Ejemplo 2: este ejemplo utiliza el método cleardevice() para borrar la pantalla.
C
// C program to draw a moving car. This // program run in gcc compiler having // graphics.h library installed #include <graphics.h> #include <stdio.h> // Function to draw moving car void draw_moving_car(void) { int i, j = 0, gd = DETECT, gm; // Passed three arguments to initgraph // function to initialize graphics mode initgraph(&gd, &gm, ""); for (i = 0; i <= 420; i = i + 10) { // Set color of car as red setcolor(RED); // Thease lines for bonnet and // body of car line(0 + i, 300, 210 + i, 300); line(50 + i, 300, 75 + i, 270); line(75 + i, 270, 150 + i, 270); line(150 + i, 270, 165 + i, 300); line(0 + i, 300, 0 + i, 330); line(210 + i, 300, 210 + i, 330); // For left wheel of car circle(65 + i, 330, 15); circle(65 + i, 330, 2); // For right wheel of car circle(145 + i, 330, 15); circle(145 + i, 330, 2); // Line left of left wheel line(0 + i, 330, 50 + i, 330); // Line middle of both wheel line(80 + i, 330, 130 + i, 330); // Line right of right wheel line(210 + i, 330, 160 + i, 330); delay(100); // To erase previous drawn car // use cleardevice() function cleardevice(); } getch(); closegraph(); } // Driver code int main() { draw_moving_car(); return 0; }
Producción:
Publicación traducida automáticamente
Artículo escrito por Vivek.Pandit y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA