📜  在 C/C++ 中使用计算机图形学的飞鸟

📅  最后修改于: 2022-05-13 01:58:43.431000             🧑  作者: Mango

在 C/C++ 中使用计算机图形学的飞鸟

在计算机图形中,C++ 提供了graphics.h ,通过它可以创建对象,并使用该对象可以在 C++ 程序中创建飞鸟。

本程序用到的函数如下:

  • line():line函数用于画线。
    句法:
  • arc():arc函数用于绘制圆弧。
    句法:
  • circle():circle函数用来画一个圆。
    句法:
  • delay():延迟函数用于停止屏幕一段时间,因为程序的执行速度非常快。
    句法:
  • cleardevice():cleardevice函数用于清屏。
  • closegraph():closegraph函数用于关闭图形。

下面是使用 graphics.h 实现飞鸟的 C++ 程序:

C++
// C++ program implementing flying bird using graphics.h
 
#include 
#include 
#include 
#include 
 
// Wings
void handDown(int i)
{
    line(85 + i, 155, 45 + i, 185);
    line(85 + i, 155, 115 + i, 195);
    arc(90 + i, 130, 228, 292, 70);
}
 
void handUp(int i)
{
    line(85 + i, 155, 125 + i, 115);
    line(85 + i, 155, 55 + i, 118);
    arc(90 + i, 177, 60, 122, 70);
}
 
// Driver code
void main()
{
    int gd = DETECT, gm;
 
    // Path of the BGI folder
    initgraph(&gd, &gm, "C:\\TURBOC3\\BGI");
    int i = 0;
 
    for (i = 0; i < 400; i++) {
        // Body
        circle(150 + i, 150, 20);
        arc(90 + i, 190, 50, 145, 60);
        arc(87 + i, 117, 220, 320, 60);
 
        // Beak
        line(170 + i, 147, 180 + i, 153);
        line(180 + i, 153, 170 + i, 156);
 
        // Eye
        circle(162 + i, 150, 2);
 
        // Tail
        line(10 + i, 155, 40 + i, 155);
        line(10 + i, 145, 40 + i, 155);
        line(10 + i, 165, 40 + i, 155);
 
        // Move hands
        if (i % 2 == 0)
            handUp(i);
        else
            handDown(i);
 
        // Stop the screen for 10 secs
        delay(10);
 
        // Clear the screen
    }
    cleardevice();
 
    getch();
 
    // Close the graph
    closegraph();
}


输出: