如何描绘空间上的一个物体,在图形学上有很多方法,OpenGL通过将物体抽象为笛卡尔坐标系下点、线段、多边形的集合,再将点、线段、多边形等通过在函数glBegin()与glEnd()之间的一系列顶点数据,绘制出图形还原物体。
OpenGL通过glBegin()与glEnd()函数完成点、线、三角形、四边形及多边形的绘制,glBegin(GLenum)函数原型如下:
glBegin(GLenum)|
...
glEnd()
参数GLenum有以下10个参数:
GL_POINTS:表示将要绘制点
GL_LINES:表示函数开始绘制线
GL_LINE_STRIP:表示函数将开始绘制折线
GL_LINE_LOOP:表示函数将开始绘制闭合曲线
GL_TRIANLES:表示函数开始绘制三角形
GL_TRIANLE_STRIP:表示函数将开始绘制三角形片
GL_TRIANLE_FAN:表示函数将开始绘制三角形扇
GL_QUADS:表示函数开始绘制四边形
GL_QUAD_STRIP:表示函数开始绘制多边形片
GL_POLYGON:表示函数绘制多边形
1、绘制二维的点:
glBegin(GL_POINTS);
glVertex2f(0.0f,0.0f);
glEnd();
在初始化OPENGL运行环境后,如上代码,将绘制一个2维的点,点的坐标为(0,0),OpenGL中绘制的二维的点实际和三维点一样,不过二维的点是将笛卡尔坐标的z轴定位在原点,二维点的坐标也就是(x,y,0)
2、绘制线:
glBegin(GL_LINES);
glVertex2f(0.0f,0.0f);
glVertex2f(0.01f,-0.4f);
glEnd();
OpenGL的任何图形都是基于点,如上绘制2个点,链接成一个直线,当然绘制以后可能出现锯齿,这样就需要进行一下反走向处理。
GL_LINES:绘制两条线段
GL_LINE_STRIP:绘制连续折线
GL_LINE_LOOP:绘制闭合曲线
3种绘制方式会产生不同的效果,具体在vc环境下测试即可看见。
3、绘制面
绘制三角形:
glBegin(GL_TRIANGLES);
glVertex3f(0.0f,0.0f,0.0f);
glVertex3f(1.0f,0.0f,0.0f);
glVertex3f(0.0f,1.0f,0.0f);
glEnd();
如上的代码将会在笛卡尔坐标中根据三个点绘制一个三角形,三角形的三个点坐标分别为(0,0,0)、(1,0,0)、(0,1,0)
分享到:
相关推荐
在IT领域,OpenGL是一种强大的图形库,用于渲染2D、3D矢量图形,而VC++(Visual C++)是Microsoft开发的一种集成开发环境,常用于编写Windows平台的应用程序。结合"vc++OpenGL应用程序开发"这个标题和描述,我们可以...
VC++OpenGL例子下载.rarVC++OpenGL例子下载.rarVC++OpenGL例子下载.rarVC++OpenGL例子下载.rarVC++OpenGL例子下载.rarVC++OpenGL例子下载.rarVC++OpenGL例子下载.rarVC++OpenGL例子下载.rarVC++OpenGL例子下载.rarVC...
vc++和OpenGL结合开发出的一个战斗机模型,是学习OpenGL的好的程序案例
"VC++ OpenGL三维地形漫游"项目就是这样一个例子,它展示了如何在VC++中构建一个能够展示并探索三维地形的应用。 首先,我们需要理解VC++6.0环境。这是一个经典的Microsoft Visual C++版本,用于编写Windows应用...
而VC++(Microsoft Visual C++)是微软公司提供的一个集成开发环境,支持创建Windows应用程序,包括使用OpenGL进行图形渲染。本实例主要探讨如何在VC++环境中利用OpenGL进行程序开发。 在VC++中使用OpenGL,首先...
8个源代码,属于Opengl高级编程与可视化系统开发(系统开发篇)的源码,包括:飞行、飞机飞行、三维场景编辑器,三维地形模拟、模拟cs游戏、粒子系统等多个软件
在"Visual C++ OpenGL应用程序开发第五章"中,你将看到如何结合VC++的IDE和OpenGL库来编写、编译和运行程序。这些注释会指导你了解每一步的目的,帮助理解源码背后的逻辑。 此外,程序可能还包含了错误处理和用户...
基于vc++的OpenGL编程技术.初步认识并了解OpenGL.
微软官方OpenGL的例子,使用VS2005+MFC。在编译之前需要先下载OpenGL库文件,将glut.lib和glut32.lib放到静态函数库所在文件夹(例如C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib),将glut.dll和...
在Windows系统上,使用Microsoft Visual C++(VC++)作为开发工具时,需要进行一些配置步骤才能搭建起OpenGL的开发环境。本教程将详细介绍如何在VC++中配置OpenGL,并提供64位库文件供您使用。 首先,我们需要安装...
本压缩包“VC++OpenGL源码 详解”显然包含了使用VC++开发OpenGL应用的相关源代码,并且每行代码都有详细的注释,旨在帮助初学者理解并学习OpenGL编程。NeHe教程是一个非常著名的OpenGL教学资源,它提供了很多基础到...
在VC++(Visual C++)编程环境中,开发者可以利用OpenGL库来实现NURBS曲面的渲染和交互。OpenGL是一个跨语言、跨平台的编程接口,专门用于生成2D和3D图形。它提供了一系列的函数调用来控制图形硬件,包括绘制NURBS...
OpenGL是一种强大的图形库,常用于...总的来说,VC++结合OpenGL和轨迹球技术,为3D图形编程提供了丰富的交互性,使得用户可以自由地查看和操纵3D模型,这对于3D建模、游戏开发以及科学可视化等领域具有重要的应用价值。
本篇文章将详细讲解如何在VC++环境下利用OpenGL库来绘制球体,这对于学习计算机图形学的学生来说是非常重要的实践操作。 首先,你需要了解OpenGL的基本概念。OpenGL是一个基于状态机的API,它的核心部分包括顶点...
在VC++中结合OpenGL库进行贝塞尔曲面的绘制,可以实现动态的、交互式的3D图形展示。 贝塞尔曲面的基础是贝塞尔曲线,由皮埃尔·贝塞尔(Pierre Bezier)于1962年提出。它是一种参数化的插值曲线,可以通过控制点来...
【VC++与OpenGL结合开发赛车游戏】 在计算机图形学领域,OpenGL是一个强大的、跨语言、跨平台的编程接口,用于渲染2D、3D矢量图形。它常被用于游戏开发,尤其是对于需要高质量视觉效果的赛车游戏。而Visual C++...
在本案例中,我们将探讨如何在Visual C++(简称VC++)环境中使用OpenGL进行应用程序开发。 首先,我们需要设置开发环境。在VC++中,你可以选择使用MFC(Microsoft Foundation Classes)或Win32 API来创建OpenGL应用...
本文档主要围绕在VC++环境下使用OpenGL进行编程的主题进行介绍,涵盖了OpenGL的一些基础函数和基本概念,以及如何在VC++中设置OpenGL环境,并进行简单的图形渲染。以下是详细的知识点: 1. OpenGL基础 OpenGL(Open...
基于VC++ opengl的水波纹模拟系统,实现了鼠标点击出现水波涟漪,场景真实。
VC++(Microsoft Visual C++)则是一款集成开发环境,常被用来编写C++代码,包括与OpenGL接口的程序。将这两者结合,开发者可以利用C++的强大编程能力与OpenGL的高效图形处理功能,打造出令人惊叹的3D魔幻场景。 在...