📜  C程序使用图形设计卡罗姆板

📅  最后修改于: 2021-05-28 02:18:46             🧑  作者: Mango

在本文中,我们将讨论如何使用图形绘制Carrom板

方法:

  • 使用矩形()函数创建板的轮廓。
  • 使用矩形()函数在较大的矩形内创建另一个较小的矩形。
  • 通过使用circle()函数,在每个角总共创建四个圆,这些圆将成为carrom板的口袋。
  • 通过使用两个函数setfillstyle()和Floodfill()函数,用深灰色为在上述步骤中创建的圆上色。
  • 董事会的所有其他部分将使用相同的功能涂成棕色。
  • 通过使用circle()函数创建另一个圆,该代表板的中心圆。
  • 通过使用相同的两个函数setfillstyle()Floodfill() ,用红色为所有其余的圆圈上色。

下面是上述方法的实现:

C
// C program to draw the Carrom Board
// using graphics
  
#include 
#include 
#include 
  
// Driver Code
void main()
{
    // Initialize of gdriver with
    // DETECT macros
    int gd = DETECT, gm;
    initgraph(&gd, &gm, "C:\\"
                        "turboc3\\bgi");
    rectangle(200, 100, 600, 500);
  
    // Draw the outer Rectangle
    rectangle(220, 120, 580, 480);
  
    // Draw the inner Rectangle
    circle(240, 140, 20);
  
    // Upper Left Hole
    circle(560, 140, 20);
  
    // Upper Right Hole
    circle(240, 460, 20);
  
    // Lower Left Hole
    circle(560, 460, 20);
  
    // Lower Right Hole
    setfillstyle(SOLID_FILL, BROWN);
    floodfill(300, 170, 15);
    line(300, 170, 500, 170);
  
    // Upper Striker Range Line(Upper)
    line(300, 184, 500, 184);
  
    // Upper Striker Range Line(Lower)
    circle(300, 177, 7);
  
    // Circle Upper Stricker(Left)
    circle(500, 177, 7);
  
    // Circle Upper Stricker(Right)
    line(300, 430, 500, 430);
  
    // Lower Striker Range Line(Upper)
    line(300, 416, 500, 416);
  
    // Lower Striker Range Line(Lower)
    circle(300, 423, 7);
  
    // Circle Lower Stricker(Left)
    circle(500, 423, 7);
  
    // Circle Lower Stricker(Right)
    line(270, 200, 270, 400);
  
    // Left Striker Range Line(Left)
    line(284, 200, 284, 400);
  
    // Left Striker Range Line(Right)
    circle(277, 200, 7);
  
    // Circle Left Stricker(Upper)
    circle(277, 400, 7);
  
    // Circle Left Stricker(Down)
    line(530, 200, 530, 400);
  
    // Right Striker Range Line(Left)
    line(516, 200, 516, 400);
  
    // Right Striker Range Line(Right)
    circle(523, 200, 7);
  
    // Circle Right Stricker(Upper)
    circle(523, 400, 7);
  
    // Circle Right Stricker(Lower)
    line(270, 170, 350, 250);
  
    // Upper Left Tangent Line
    line(530, 170, 450, 250);
  
    // Upper Right Tangent Line
    line(270, 430, 350, 350);
  
    // Lower Left Tangent Line
    line(530, 430, 450, 350);
  
    // Lower Right Tangent Line
    circle(400, 300, 40);
  
    // Central Circle
    circle(400, 300, 15);
  
    // Mini Central Circle
    setfillstyle(SOLID_FILL, RED);
  
    // All Circle Red Coloring
    floodfill(303, 180, 15);
    floodfill(497, 180, 15);
    floodfill(303, 420, 15);
    floodfill(497, 420, 15);
    floodfill(280, 203, 15);
    floodfill(280, 403, 15);
    floodfill(520, 203, 15);
    floodfill(520, 403, 15);
    floodfill(405, 305, 15);
  
    setfillstyle(SOLID_FILL, DARKGRAY);
    floodfill(243, 143, 15);
    floodfill(563, 143, 15);
    floodfill(243, 463, 15);
    floodfill(563, 463, 15);
  
    // Collectively coloring all
    // the shapes created above
    getch();
  
    // Close the initialized gdriver
    closegraph();
}


输出:

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。