21xrx.com
2024-12-27 04:22:01 Friday
登录
文章检索 我的文章 写文章
C++编程:绘制三角形星星
2023-07-04 17:56:25 深夜i     --     --
C++编程 绘制 三角形星星

在C++编程中,我们可以使用绘图函数,绘制出各种各样的图形。在这篇文章中,我们将学习如何绘制出一个三角形星星。

首先,我们需要通过C++的图形库,如graphics.h等,来绘制图形。在这里,我们以graphics.h库为例。

接下来,我们需要了解如何绘制三角形。通过graphics.h库的line()函数,我们可以连接三个点,从而形成一个三角形。例如,我们可以这样绘制一个三角形:


line(100, 200, 200, 200);

line(100, 200, 150, 100);

line(150, 100, 200, 200);

以上代码中,我们通过line()函数连接了三个点,分别是(100,200)、(200,200)和(150,100),形成了一个三角形。

接下来,我们将通过上面的方法,绘制出一个三角形星星。具体来讲,我们需要通过line()函数连接五个点,形成一个五角星。由于五角星的较为复杂,我们需要计算出每个点的坐标。经过计算,我们可以得到以下代码:


int x1 = 200, y1 = 100;

int x2 = 120, y2 = 200;

int x3 = 280, y3 = 200;

int x4 = 150, y4 = 280;

int x5 = 250, y5 = 280;

line(x1, y1, x2, y2);

line(x1, y1, x3, y3);

line(x1, y1, x4, y4);

line(x1, y1, x5, y5);

line(x2, y2, x4, y4);

line(x2, y2, x5, y5);

line(x3, y3, x4, y4);

line(x3, y3, x5, y5);

line(x4, y4, x1, y1);

line(x5, y5, x1, y1);

以上代码中,我们使用了五个点来绘制出一个五角星。我们通过line()函数,连接了五个点,从而形成了一个五角星。

此外,我们还可以通过设置画笔颜色和填充颜色,来美化这个三角形星星。例如,我们可以通过以下代码,将线条颜色设置为白色,填充颜色设置为红色:


setcolor(WHITE);

setfillstyle(SOLID_FILL, RED);

fillpoly(5, poly);

最后,我们会得到一个绘制出三角形星星的C++程序:


#include <graphics.h>

int main()

{

  //初始化图形窗口

  initwindow(500, 500, "Triangle Star");

  //设置坐标

  int x1 = 200, y1 = 100;

  int x2 = 120, y2 = 200;

  int x3 = 280, y3 = 200;

  int x4 = 150, y4 = 280;

  int x5 = 250, y5 = 280;

  //绘制五角星

  line(x1, y1, x2, y2);

  line(x1, y1, x3, y3);

  line(x1, y1, x4, y4);

  line(x1, y1, x5, y5);

  line(x2, y2, x4, y4);

  line(x2, y2, x5, y5);

  line(x3, y3, x4, y4);

  line(x3, y3, x5, y5);

  line(x4, y4, x1, y1);

  line(x5, y5, x1, y1);

  //设置填充颜色和线条颜色

  setcolor(WHITE);

  setfillstyle(SOLID_FILL, RED);

  //填充五角星

  int poly[] = y3;

  fillpoly(5, poly);

  //停留窗口

  getch();

  closegraph();

  return 0;

}

绘制出来的三角形星星如下图所示:

![Triangle Star](https://img-blog.csdn.net/20170427221225773?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvSGVsbG9faG9uZw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80)

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复