glBegin(GL_TRIANGLES);
glVertex3f( 0.0f, 1.0f, 0.0f);
glVertex3f(-1.0f,-1.0f, 0.0f);
glVertex3f( 1.0f,-1.0f, 0.0f);
glEnd();
begin end 中间是构成矢量图形的点
#define GL_POINTS 0x0000
#define GL_LINES 0x0001
#define GL_LINE_LOOP 0x0002
#define GL_LINE_STRIP 0x0003
#define GL_TRIANGLES 0x0004
#define GL_TRIANGLE_STRIP 0x0005
#define GL_TRIANGLE_FAN 0x0006
#define GL_QUADS 0x0007
#define GL_QUAD_STRIP 0x0008
#define GL_POLYGON 0x0009
#include "header.h" GLvoid ReSizeGLScene(GLsizei width, GLsizei height) { if (height==0) { height=1; } glViewport(0,0,width,height); glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(25.0f,(GLfloat)width/(GLfloat)height,0.1f,100.0f); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); } int InitGL(void) { glShadeModel(GL_SMOOTH); glClearColor(0.0f, 0.0f, 0.0f, 0.5f); glClearDepth(1.0f); glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LEQUAL); glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); return TRUE; } void DrawGLScene(void) { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glLoadIdentity(); glTranslatef(-1.5f,0.0f,-6.0f); glBegin(GL_TRIANGLES); glVertex3f( 0.0f, 1.0f, 0.0f); glVertex3f(-1.0f,-1.0f, 0.0f); glVertex3f( 1.0f,-1.0f, 0.0f); glEnd(); glTranslatef(3.0f,0.0f,0.0f); glBegin(GL_QUADS); glVertex3f(-1.0f, 1.0f, 0.0f); glVertex3f( 1.0f, 1.0f, 0.0f); glVertex3f( 1.0f,-1.0f, 0.0f); glVertex3f(-1.0f,-1.0f, 0.0f); glEnd(); glFlush(); } int main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB | GLUT_DEPTH); glutInitWindowSize(640,480); glutCreateWindow("2D图形"); glutReshapeFunc(ReSizeGLScene); glutDisplayFunc(DrawGLScene); InitGL(); glutMainLoop(); return 0; }
相关推荐
OpenGL是一个跨语言、跨平台的编程接口,用于渲染2D、3D矢量图形。它提供了大量的函数和状态机来控制图形的渲染过程,如顶点、颜色、纹理等。在C#中使用OpenGL,我们需要一个库作为桥梁,CSGL就是这样的一座桥梁,它...
OpenGL,全称OpenGL图形程序接口,是一种用于渲染2D、3D矢量图形的标准,广泛应用于游戏开发、科学可视化和工程模拟等领域。在本压缩包文件中,我们重点关注如何使用OpenGL来绘制管道,特别是U型口的实现。 OpenGL...
在计算机图形学领域,OpenGL是一种跨语言、跨平台的编程接口,用于渲染2D和3D矢量图形。本教程将深入探讨如何使用C++与OpenGL结合,来创建和展示三维图形。首先,我们需要理解OpenGL的基本概念和C++的基础知识。 1....
- 学习如何使用OpenGL绘制点、线、面等基本几何元素。 - 了解OpenGL中颜色模型的设定方法,例如使用`glColor3f()`函数来指定颜色。 - 掌握不同的绘制模式,如`GL_POINTS`、`GL_LINE_STRIP`、`GL_TRIANGLES`等。 ...
2. **绘图算法**:绘制矢量图形涉及到一系列算法,如直线和曲线的插值算法、平滑处理、抗锯齿算法等。源码会展示如何利用这些算法进行精确绘图,确保图形的平滑和精细。 3. **图形交互**:用户与图形的交互,如鼠标...
OpenGL,全称OpenGL图形编程接口,是用于渲染2D、3D矢量图形的跨语言、跨平台的...通过学习和实践这个例子,开发者不仅可以掌握如何用OpenGL绘制曲线,还能提升对图形渲染过程的理解,为今后的图形项目打下坚实的基础。
3. **绘图算法**:为了在屏幕上绘制矢量图形,我们需要了解如描边、填充、渐变和阴影等绘图算法。这些算法决定了图形的外观和质感。 4. **交互与编辑**:用户通常需要能够实时编辑图形,如改变形状、移动元素或调整...
Qt是一个跨平台的应用程序开发框架,广泛用于GUI应用,而OpenGL则是一种用于渲染2D、3D矢量图形的低级编程接口。通过这两者的结合,我们可以创建出动态的、交互式的三维图形应用程序。 首先,我们需要理解Qt中的...
在计算机图形学领域,OpenGL是一种广泛使用的跨语言、跨平台的编程接口,用于渲染2D、3D矢量图形。本项目聚焦于使用OpenGL来创建一个动态的天文模型,模拟太阳、地球和月亮的运动。这个模型对于教育、演示天文学原理...
OpenGL(Open Graphics Library)是一个跨语言、跨平台的应用程序编程接口(API),用于渲染2D和3D矢量图形。图形学的知识点广泛且复杂,包含但不限于基础图形学概念、图形管线、渲染技术、着色器、光照模型、纹理...
OpenGL是一种跨语言、跨平台的应用程序编程接口(API),用于渲染2D、3D矢量图形。它是计算机图形学中的一个重要工具,广泛应用于游戏开发、科学可视化、虚拟现实等领域。本教程将带你入门OpenGL,了解其基本接口和...
5. **OpenGL编程**: OpenGL是一种跨语言、跨平台的图形库,用于渲染2D和3D矢量图形。开发者可能在`TestGL`类中实现了OpenGL的基本绘图函数,如`glBegin`、`glEnd`、`glVertex`等,以及更现代的顶点数组和顶点缓冲...
在计算机图形学领域,OpenGL是一个跨语言、跨平台的编程接口,用于渲染2D、3D矢量图形。这个课程设计实验旨在帮助学习者掌握基本的OpenGL编程技巧,同时探索更高级的技术如橡皮条技术。 首先,我们要了解OpenGL的...
读者将了解到如何高效地计算和绘制矢量图形,以及如何优化图形的显示性能。 在编程方面,书中涵盖了图形API(应用程序接口)的使用,如SVG(可缩放矢量图形)和OpenGL等。SVG是一种基于XML的矢量图形语言,常用于...
OpenGL(Open Graphics Library)是一种用于渲染2D、3D矢量图形的跨语言、跨平台的应用程序编程接口(API)。它使用一种特殊的状态机来控制图形渲染,并且通过一系列函数调用来实现复杂的图形操作。 #### OpenGL在...
1. OpenGL:OpenGL是一个跨语言、跨平台的编程接口,用于渲染2D、3D矢量图形。它由多个固定功能的阶段组成,如顶点处理、光照计算、纹理贴图等,为开发者提供了丰富的图形绘制能力。 2. 可交互性:在OpenGL中实现可...
在给定的“vc绘图:gis绘图程序(简单矢量图形绘制).rar”压缩包中,我们可以推测其内容可能包含一个使用VC++(Visual C++)编写的GIS绘图应用程序,该程序能够绘制简单的矢量图形。VC++是一个强大的Windows平台...
OpenGL是跨平台的图形应用编程接口(API),用于生成二维和三维矢量图形。 OpenGL提供了一组API函数,允许开发者创建高质量的、交互式的三维图形。 二、VC++下使用OpenGL绘制彩色旋转金字塔 在VC++中使用OpenGL...