21xrx.com
2024-11-05 18:51:56 Tuesday
登录
文章检索 我的文章 写文章
C++绘制矩形的代码
2023-06-24 14:09:14 深夜i     --     --
C++ 矩形 绘制 代码

C++是一门高效、强大的编程语言,它被广泛应用于各个领域。其中,绘制图形是C++编程中的一项重要操作,熟练掌握各种图形的绘制方法,可以帮助程序员更快速地实现自己的编程任务。本文将介绍C++绘制矩形的代码实现方法。

一、使用Windows GDI库绘制矩形

Windows GDI(图形设备接口)提供了一组基本的图形绘制函数,可以轻松地实现矩形、线条、文字等基本图形的绘制。下面的代码演示了如何使用GDI库绘制矩形:


#include <Windows.h>

#include <iostream>

using namespace std;

int main()

{

  HDC hdc = GetWindowDC(NULL); //获取屏幕句柄

  RECT rect = 100; //定义矩形

  HBRUSH brush = CreateSolidBrush(RGB(255, 0, 0)); //定义画刷,设置画刷颜色为红色

  FillRect(hdc, &rect, brush); //绘制矩形,并填充为红色

  DeleteObject(brush); //释放画刷对象

  ReleaseDC(NULL, hdc); //释放设备上下文句柄

  getchar();

  return 0;

}

二、使用OpenGL库绘制矩形

OpenGL是一种跨平台的图形库,支持2D和3D图形绘制。通过OpenGL库,我们可以轻松地实现各种图形的绘制。下面的代码演示了如何使用OpenGL库绘制矩形:


#include <GL/glut.h>

#include <iostream>

using namespace std;

void drawRectangle()

{

  glClearColor(0.0, 0.0, 0.0, 0.0); //设置背景色为黑色

  glClear(GL_COLOR_BUFFER_BIT);

  glColor3f(1.0, 0.0, 0.0); //设置颜色为红色

  glBegin(GL_QUADS); //开始绘制四边形

  glVertex2f(-0.5, -0.5);

  glVertex2f(-0.5, 0.5);

  glVertex2f(0.5, 0.5);

  glVertex2f(0.5, -0.5);

  glEnd(); //结束绘制四边形

  glFlush();

}

int main(int argc, char** argv)

{

  glutInit(&argc, argv);

  glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);

  glutInitWindowSize(400, 400);

  glutInitWindowPosition(100, 100);

  glutCreateWindow("OpenGL Rectangle");

  glutDisplayFunc(drawRectangle);

  glutMainLoop();

  return 0;

}

上述代码中,我们使用GLUT库创建OpenGL窗口,并定义了绘制矩形的函数`drawRectangle()`。在绘制矩形过程中,我们使用`glBegin()`和`glEnd()`函数指定绘制四边形的顶点,然后使用`glColor3f()`函数设置矩形的颜色为红色,最后使用`glFlush()`函数将绘制结果输出到屏幕上。

总结

本文介绍了使用Windows GDI库和OpenGL库绘制矩形的代码实现方法。这两种方法各有优缺点,读者可以根据自己的需要选择适合自己的方法。无论使用哪种方法,掌握了绘制基本图形的方法,都能够更好地实现自己的编程任务。

  
  

评论区

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