función drawpoly() en C

El archivo de encabezado graphics.h contiene la función drawpoly() que se usa para dibujar polígonos, es decir, triángulo, rectángulo, pentágono, hexágono, etc.

Sintaxis:

void drawpoly( int number, int *polypoints );

where,
number indicates (n + 1) number of points 
where n is the number of vertices in a
polygon. polypoints points to a sequence 
of (n*2) integers.

Ejemplos:

Input : arr[] = {320, 150, 400, 250, 
                250, 350, 320, 150};
Output : 

Input : arr[] = {120, 250, 400, 250, 400,
                 350, 450, 200, 120, 250};
Output : 

Explicación: la declaración de drawpoly() contiene dos argumentos. número indica (n + 1) número de puntos donde n es el número de vértices en un polígono. El segundo argumento, es decir, polipuntos apunta a una secuencia de (n * 2) enteros. Cada par de números enteros da las coordenadas x e y de un punto en el polígono. Especificamos (n + 1) puntos porque las coordenadas del primer punto deben ser iguales a (n + 1) para dibujar una figura completa.

Ejemplo 1: Dibujar un triángulo usando drawpoly.
int arr[] = {320, 150, 400, 250, 250, 350, 320, 150};

Array arr contiene coordenadas de triángulo que son (320, 150), (400, 250) y (250, 350). Tenga en cuenta que el último punto (320, 150) en la array es el mismo que el primero.

A continuación se muestra la implementación de la función drawpoly().

// C Implementation for drawpoly()
#include <graphics.h>
  
// driver code
int main()
{
    // gm is Graphics mode which is
    // a computer display mode that
    // generates image using pixels.
    // DETECT is a macro defined in
    // "graphics.h" header file
    int gd = DETECT, gm;
  
    // coordinates of polygon
    int arr[] = {320, 150, 400, 250, 
                 250, 350, 320, 150};
  
    // initgraph initializes the
    // graphics system by loading a
    // graphics driver from disk
    initgraph(&gd, &gm, "");
  
    // drawpoly function
    drawpoly(4, arr);
  
    getch();
  
    // closegraph function closes the
    // graphics mode and deallocates
    // all memory allocated by
    // graphics system .
    closegraph();
  
    return 0;
}

Producción :


Publicación traducida automáticamente

Artículo escrito por Sahil_Bansall y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *