【OPENGL】读取并显示BMP文件
来源:互联网 发布:影响黄金的重要数据 编辑:程序博客网 时间:2024/05/16 07:54
代码如下:
#include <gl/glut.h>#define FileName "D:\\grab.bmp"static GLint ImageWidth;static GLint ImageHeight;static GLint PixelLength;static GLubyte* PixelData;#include <stdio.h>#include <stdlib.h>void display(void){ // 清除屏幕并不必要 // 每次绘制时,画面都覆盖整个屏幕 // 因此无论是否清除屏幕,结果都一样 // glClear(GL_COLOR_BUFFER_BIT); // 绘制像素 glDrawPixels(ImageWidth, ImageHeight, GL_BGR_EXT, GL_UNSIGNED_BYTE, PixelData); // 完成绘制 glutSwapBuffers();}int main(int argc, char* argv[]){ // 打开文件 FILE* pFile = fopen(FileName, "rb"); if (pFile == 0) exit(0); // 读取图象的大小信息 fseek(pFile, 0x0012, SEEK_SET); fread(&ImageWidth, sizeof(ImageWidth), 1, pFile); fread(&ImageHeight, sizeof(ImageHeight), 1, pFile); // 计算像素数据长度 PixelLength = ImageWidth * 3; while (PixelLength % 4 != 0) ++PixelLength; PixelLength *= ImageHeight; // 读取像素数据 PixelData = (GLubyte*)malloc(PixelLength); if (PixelData == 0) exit(0); fseek(pFile, 54, SEEK_SET); fread(PixelData, PixelLength, 1, pFile); // 关闭文件 fclose(pFile); // 初始化GLUT并运行 glutInit(&argc, argv); glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA); glutInitWindowPosition(100, 100); glutInitWindowSize(ImageWidth, ImageHeight); glutCreateWindow(FileName); glutDisplayFunc(&display); glutMainLoop(); return 0;}
阅读全文
0 0
- 【OPENGL】读取并显示BMP文件
- VC/MFC读取BMP文件并显示
- opengl入门例题(读取bmp图片,并显示)
- opengl入门例题(读取bmp图片,并显示)
- OpenGL BMP文件显示
- BMP文件的读取显示
- opengl读取24位BMP文件为纹理并处理黑色背景为透明
- OpenGL之C++实现读取txt文件并显示
- 读取BMP图片并显示到窗口.
- 如何把位图读入内存中并显示?实现从打包文件中读取bmp文件并显示!
- VC6.0中使用Stream Object读取数据中流文件并显示Bmp,JPG等图片
- VC6.0中使用Stream Object读取数据中流文件并显示Bmp,
- VC6.0中使用Stream Object读取数据中流文件并显示Bmp,JPG等图片
- 介绍一下MFC对话框工程读取BMP文件并显示的例子
- VC6.0中使用Stream Object读取数据中流文件并显示Bmp,JPG等图片
- 读取BMP文件并显示出来(C++实现)
- BMP文件的读取与显示
- VC 创建BMP文件并显示
- vector&list
- Spring 框架 执行SQL getJdbcTemplate().query update 用法
- 正则表达式
- XRecyclerView 实现下拉刷新和上拉加载更多
- 数据库解锁步骤
- 【OPENGL】读取并显示BMP文件
- CSS的一些总结:
- 修饰模式总结:
- prime算法(最小生成树模板)
- log4j配置过程
- 使用mvc:annotation-driven的时候,使用不了DefaultAnnotationHandlerMapping的问题,解决办法
- oracle存储过程
- 一步两步,学习大数据(五)——flume的介绍、配置以及使用
- POI使用