OpenGL
文章平均质量分 84
DiamondTan-覃
人生苦短,我用Python。
展开
-
MFC+OpenGL单文档制作三维图像
GDI:图形设备接口DC:设备描述表RC:着色描述表OpenGL:专业图形程序接口画图原理:每个GDI命令需要传给它一个DC,OpenGL需要绘制环境(RC),RC与特定的DC联系起来,完成绘图工作。产生OpenGL并使之成为当前的RC步骤:1.设置窗口像素格式2.产生RC3.设置当前RC1.创建一个MFC单文档项目命名为VCOpenGL2原创 2015-08-07 19:55:38 · 6281 阅读 · 7 评论 -
OpenGL关于二维变换的例子
#include<GL/glut.h>#include<cstdlib>#include<cmath>#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")/*初始化窗口大小*/GLsizei winWidth = 600, winHeight = 600..原创 2015-07-21 10:09:39 · 902 阅读 · 0 评论 -
OpenGL画线和直方图笔记
#include <gl/glut.h>#include <gl\gl.h> // OpenGL32库的头文件#include <gl\glu.h>GLsizei winWidth = 600, winHeight = 500;GLint xRaster = 25, yRaster = 150;GLubyte label[36] = { ...原创 2015-07-15 21:01:22 · 1020 阅读 · 0 评论 -
OpenGL关于glEnable(GL_LINE_STIPPLE) glLineStipple() glLineWidth() glDisable()的实例
#include <GL/glut.h>#include <stdlib.h>#define drawOneLine(x1,y1,x2,y2) glBegin(GL_LINES); \glVertex2f((x1), (y1)); glVertex2f((x2), (y2)); glEnd();/*“\”的作用是把一行的内容当做两行来处理*/void init...原创 2015-07-30 10:38:23 · 6262 阅读 · 0 评论 -
MFC+OpenGL单文档实现图形旋转
OpenGL画图函数:void display(){glPushMatrix();glRotatef(spin, 0.0, 0.0, -1.0); /*绕着z轴旋转 每次旋转spin度 正:逆时针*/glColor3f(0.0, 0.0, 0.0);glRectf(-250.0, -250.0, 250.0, 250.0); /*画矩形 参数:对角线*/glPopMatri...原创 2015-08-01 20:01:39 · 1775 阅读 · 0 评论 -
透视函数glFrustum(), gluPerspective()函数用法和glOrtho()函数用法.
在OpenGL中,如果想对模型进行操作,就要对这个模型的状态(当前的矩阵)乘上这个操作对应的一个矩阵.如果乘以变换矩阵(平移, 缩放, 旋转), 那相乘之后, 模型的位置被变换;如果乘以投影矩阵(将3D物体投影到2D平面), 相乘后, 模型的投影方式被设置;如果乘以纹理矩阵(), 模型的纹理方式被设置.而用来指定乘以什么类型的矩阵, 就是glMatriMode(GLenum mod...转载 2015-08-06 15:32:41 · 882 阅读 · 0 评论 -
OpenGL制作键盘交互的会行走的机器人
直接上代码#include<GL\gl.h>#include<GL\glut.h>#include<windows.h>//#pragma comment(lib, "glut32.lib")#include <iostream>using namespace std;GLfloat no_mat[] = { 1.0, 1.0,...原创 2018-11-07 11:10:31 · 4957 阅读 · 1 评论 -
OpenGL中平移函数glTranslatef()、旋转函数glRotatef()的理解
void glTranslatef(GLfloat x,GLfloat y,GLfloat z);函数功能:沿X轴正方向平移x个单位(x是有符号数) 沿Y轴正方向平移y个单位(y是有符号数) 沿Z轴正方向平移z个单位(z是有符号数)void glRotatef(GLfloat angle,GLfloat x,GLfloat y,GLfloat z);原创 2016-01-31 12:04:55 · 73198 阅读 · 6 评论 -
VS2013+OpenGL环境搭建好之后运行第一个程序出错
电脑重装了次系统,所以将OpenGL环境重新配置了一遍,配置完成后写了一个OpenGL程序发现出现了如下错误信息:解决办法:1.在#include 前加上一句#define GLUT_DISABLE_ATEXIT_HACK2.使用Visual Studio 2012(v110) 环境编译原创 2016-01-22 14:18:37 · 586 阅读 · 0 评论 -
OpenGL+MFC对glMatrixMode(),glLoadIdentity()的理解
刚学OpenGL,我试着用MFC把我 做的OpenGL程序整理成一个带有菜单单文档的形式,点击不同的菜单会弹出不同的图形下面我把我程序中出现的小问题说一下/*绘制三维球、棱锥、棱柱*/void CXXXView::wireQuadSurfs(){glMatrixMode(GL_PROJECTION);glOrtho(-2.0, 2.0, -2.0, 2.0, 0.0, 5.原创 2015-08-10 15:22:07 · 1793 阅读 · 0 评论 -
OpenGL关于glBegin的参数的理解
#include<GL/glut.h>#include<iostream>using namespace std;void init(){glClearColor(0.0, 0.0, 0.0, 0.0);glMatrixMode(GL_PROJECTION);glClear(GL_COLOR_BUFFER_BIT);gluOrtho2D(0.0,200.0,...原创 2015-07-28 20:28:04 · 9007 阅读 · 0 评论