opengl只显示窗口,不显示图像,求大神帮忙! [问题点数:100分,无满意结帖,结帖人weixin_41504803]

Bbs1
本版专家分:0
结帖率 100%
Bbs1
本版专家分:0
OpenGL通过贴图显示一张图片
找了一段时间的资料才整出来的简单的可以跑的通的,不需要太多头文件的代码,可算调通了,为了节省大家的时间,特意贴出代码,有不正确的直接留言, 配置说明(不说配置环境的代码都是流氓小说): 包含:GLEW库,SOIL库,GL库(最好freeglut) 还有你的环境 链接:glew32.lib SOIL.lib <em>opengl</em>32.lib freeglut.lib 啥都不说了,直接上干货: #...
显示一张图片开始学习OpenGL ES
前言 网上很多介绍OpenGL ES的文章,但由于OpenGL ES内容太多,所以这些文章难免过于臃肿杂乱,很难抓住重点,对于初学者来说最后还是云里雾里。很多人(包括笔者本人)开始深入了解OpenGL ES是因为其涉及到实时滤镜的应用,通常都会参考开源框架GPUImage的实现。如果没有掌握基本的OpenGL Es的开发知识,很难弄懂其中代码缘由。 目前很流行的短视频特效处理也有涉及到OpenGL...
计算机图形学中“窗口”与“视区”的演示
孔令德编写的《计算机图形学基础教程Visual C++版》P50 & “<em>窗口</em>”与“视区”的概念往往不容易理解。“<em>窗口</em>”可以理解是一种逻辑坐标系下的矩形区域,而“视区”是设备坐标系下的矩形区域,根据“<em>窗口</em>”和“视区”的大小就可以确定x方向和y方向的比例因子:x方向比例因子=视区cx /<em>窗口</em>cx,y方向比例因子=视区cy/<em>窗口</em>cy。 一、如果设置SetWindowExt(100,100),
QT+OpenGL读取显示图片
GLuint readImage(char *filename) {     GLuint tex_id;     GLint alignment;     QImage tex, buf;     buf.load(filename);     tex = QGLWidget::convertToGLFormat( buf );     glBindTexture( GL_TEXT
OpenGL: 显示图片
<em>显示</em>一个正方形位图文件pictest.bmp。举例: LoadT8("images/pictest.bmp", iTex); glTranslatef(0,0,-10); texture(iTex);  tPic(3.0f); 附:各个函数的源码://绘制正方形void tPic(float e){ glBegin(GL_QUADS);  glTexCoord2f(0.0f, 0.0f); glV
理解OpenGL 裁剪区域和视口
看了好多文章,都不能真正的明白裁剪区域到底是什么。网上找了个例子 #include #include #include #include #include const float PI = 3.1415926; const int WINDOW_WIDTH = 640; const int WINDOW_HE
opengl窗口、视区和裁剪窗口的位置关系。。搞不懂
如果 gluOrtho2D(-4,9,-5,10),glViewport(5,5,50,50),<em>窗口</em>的宽高为 ( 55, 55),试画出<em>窗口</em>、视区和裁剪<em>窗口</em>的位置关系,并标注 视区四个角点的世界坐标。 分析可以详细一点吗?
opengl绘制的图形在前面不显示,绕到后面才显示
具体说一下情况,就是带相机漫游功能的场景中; 绘制的多边形物体,从z轴正向看的话,显然没有<em>图像</em>,但是把相机绕到z轴负方向就绘制出了<em>图像</em> 这个问题主要是因为在工程中glEnable( GL_CULL_FACE );造成的。注释掉即可。 下面摘抄自网上: void glCullFace(GLenum mode); 表示禁用多边形正面或者背面上的光照、阴影和颜色计算及操作,消除不必要的渲染计算。
OpenGL纹理显示问题
问题1 纹理<em>显示</em>为条纹2 纹理<em>显示</em>为全黑解决用windows画图 将纹理图片的宽,高改为2的幂次方参考http://blog.sina.com.cn/s/blog_4fce33220101cshx.html
openGL运行不显示图形
代码如下 #include #include void init(); void reshape(int w, int h); void display(void); void init(void) { glClearColor(1, 1, 0, 1.0); //指定清除颜色,即背景颜色 glShadeModel(GL_FLAT); } void reshape(int w, int h) { glViewport(0, 0, w, h); glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluOrtho2D(0, (double)w, 0, (double)h); } void display(void) { glClear(GL_COLOR_BUFFER_BIT); int x[5] = { 180,120,140,220,240 }; int y[5] = { 180,140,60,60,140 }; ////*****五边形 glBegin(GL_LINE_LOOP); glColor3f(1, 0, 0); for (int i = 0;i < 5;i++) { glVertex2i(x[i], y[i]); } glEnd(); //*****五角星 glBegin(GL_LINES); glColor3f(0, 1, 0); for (int i = 0;i < 5;i++) { glVertex2i(x[i], y[i]); if (i + 2 > 4) { int j = (i + 2) % 5; glVertex2i(x[j], y[j]); } glVertex2i(x[i+2], y[i+2]); } glEnd(); glFlush(); } int main(int argc, char* argv[]) { glutInit(&argc, argv); //初始化GLUT并处理命令行参数 glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB); //指定模式:双缓存;RGB模式 glutInitWindowSize(500, 500); //指定<em>窗口</em>大小(像素) glutInitWindowPosition(50, 50); //指定<em>窗口</em>左上角在屏幕上的位置 glutCreateWindow("五角星"); //使用OpenGL场景创建一个<em>窗口</em>,参数为<em>窗口</em>名称 init(); //调用初始化函数 glutDisplayFunc(display); //<em>显示</em> glutReshapeFunc(reshape); //重绘 glutMainLoop(); return 0; //ANSI C要<em>求</em>函数main()返回一个int值 } ``` ```
OpenGL编程运行时不显示图像,只出现一个白色背景的窗口,怎么回事
因为电脑出现问题,前不久重新装了系统,重新配置了OpenGL库函数,结果试了一下之前编过并成功的程序,全部都是运行后不<em>显示</em><em>图像</em>,只有一个白色背景的<em>窗口</em>,<em>求</em><em>大神</em>指点一下,虚心请教。下面贴出一个简单的出现
OpenGl 中glViewport(x,y,cx,cy)的x和y与窗口坐标有啥区别?
OpenGl 中glViewport(x,y,cx,cy)的x和y与<em>窗口</em>坐标有啥区别?
OpenGL在Win32中为什么不显示绘制的图形
问题如题,描述如下: 我封装了一个Win32<em>窗口</em>类(WndBasic)和一个OpenGL类(OpenGLContext),把他们合在一起后一直不能<em>显示</em>OpenGL绘制的图形(效果如图一所示),单独将O
windows下用OPENGL播放视频 -采用纹理显示
 采用OPENGL纹理<em>显示</em>视频 OPENGL <em>显示</em>视频2种 1.直接纹理<em>显示</em> 在1.0 就支持 2.基于可编程(着色器)纹理<em>显示</em> 1.5后支持 这个之前的文章介绍过 有一点要记住 在windows上<em>显示</em>视频,<em>窗口</em>DC只支持RGB,所以如果是YUV 一定要转换RGB 在1.5后着色器可编程转换。1.5之前的自己转换 这里介绍直接纹理<em>显示</em>视频 1.设置<em>显示</em><em>窗口</em>DC参数,创建OPEN
opengl如何显示一张图片
如题,<em>求</em>解啊<em>求</em>解,<em>求</em>解
opengl ) 为啥显示不了纹理贴图
我是Opengl菜鸟 为啥这个程序<em>显示</em>不了纹理贴图,在线等 #include //引用相关包 #include #include #inc
OPENGL咋在指定区域显示图像啊,教。
我想在<em>窗口</em>里画一个固定的区域去<em>显示</em><em>图像</em>,<em>窗口</em>指定部分之外不能有<em>图像</em>的<em>显示</em>,模板是单文档框架。我在onsize函数里随便画了个区域hRgnTemp = CreateRectRgn(100,100,600
openGl程序运行不了,图像显示不出来
我按照网上的方法,下载了GLUT包,把包中的文件都放到了自己电脑相应的位置上,但是编译运行一个简单的openGl文件时,<em>图像</em><em>显示</em>不出来,请问哪位高手能解决这个问题? ![CSDN移动问答][1] [1]: http://d.pcs.baidu.com/thumbnail/fbe716a0058a2de32e179ade2e45fd6b?fid=1091496173-250528-2192862797&time=1381993065&rt=pr&sign=FDTAR-DCb740ccc5511e5e8fedcff06b081203-v8/kKQQepwS/w4XU84CAaXa0i7E=&expires=8h&r=141023611&size=c10000_u10000&quality=100
opengl实例读入图片并显示
<em>opengl</em>实例读入图片并<em>显示</em>,可以进行相关操作.而且设置了灯光,对<em>opengl</em>灯光使用参数设置、逻辑设置等编程有相当大的帮助.大家可以试试。
gluOrtho2D与glViewport的区别
gluOrtho2D(-200.0,200.0,-200.0,200.0); //设置投影参数   //指的是视图范围,如果(0,200,0,200)的话就只能在第一象限<em>显示</em>,就1/4圆 //第1,3的参数是左下角坐标,第2,4的参数是右上角坐标 glViewport(0,0,400,400);  //前两个参数改变原点坐标,后两个参数改变图形长宽(放大缩小)
OpenGL创建窗口无法显示
在openGL教程看到一个例子。就是创建一个什么都没有的<em>窗口</em>。可是遇到了问题问题提示在代码中,程序直接崩溃提示中断…… 而且<em>窗口</em>也不会<em>显示</em>出来…… 请问大家一下,是哪个环节出错了。小弟是新手。谢谢了
opengl 初级问题,程序为什么不显示结果
#include "glos.h" #include #include #include #define PI 3.141593 v
集成显卡运行opengl程序,图像无法显示解答
各位大侠,我前几天写的<em>显示</em><em>图像</em>的小程序,glsl的version是330,独显上运行正常,换到Intel(R) HD Graphics 4400 集显,<em>图像</em><em>显示</em>不了,黑屏,但是画线标记部分是正常的,请问大侠们这是什么原因啊
gluOrtho2D() 结合glViewport() 的使用
#include #include #include #include #include using namespace std; /***/ void drawTran() { glBegin(GL_POLYGON); glVertex2i(0,50); glVertex2i(50,-25); glVertex2i(-50,-25);
【概念理解】gluOrtho2D和glViewport的作用&窗口显示的关系
<em>窗口</em>与<em>显示</em>主要与三个量有关:世界坐标,<em>窗口</em>大小和视口大小。围绕这些量共有4个函数: glutInitWindowPosition(int x, int y)//定义<em>窗口</em>位置 glViewport(int x, int y, GlLsizei w, Glsizei h)//定义视口大小 glutInitWindowSize(int width, int height)//定义<em>窗口</em>大小 gl...
OpenGL编程读取txt文档数据,运行时不显示图像,只出现一个白色背景的窗口,怎么回事。本人刚开始学习编程,各位大神指导,跪谢,急~~
我就想实现如下功能,将一个txt文件的数据读入<em>opengl</em>的一个三维数据点,目前程序已经能够读入x,y,z,打印可以<em>显示</em>,但是不知道为什么调用<em>opengl</em>绘制点时不<em>显示</em>,不知道问题在哪里,本人初学op
opengl 001 显示一个带背景颜色的窗口
这篇教程<em>显示</em>一个带有背景颜色的<em>窗口</em>。 讲解方式一次讲一点,循序渐进。 环境在ubuntu 14.04 <em>opengl</em> 3.0 编译方式 gcc list001.c -o list001 -lGL -lGLU -lglut /* * Copyright (c) 1991, 1992, 1993 Silicon Graphics, Inc. * * Permission to
openGL 关于3D图像显示区域问题
这样的,我做了个蓝牙接收主机发来的3D立体点数据,采用OpenGl进行绘制,但是3D<em>图像</em>只做绘制到一个新的View上,可我想将3D<em>图像</em>绘制到主界面的区域,请问该怎样做呢? 图一是主界面,图二是接收完数
Ubuntu下Intel集显无法使用OpenGL 3.0以上版本的问题解决方法
把系统从 Ubuntu 16.04 换到了最新 Ubuntu 19.10 后在编写 OpenGL 程序后发生了闪退,但是把程序放在 16.04 上跑就跑得好好的。 找 BUG 时发现可能是没有获取到正确的版本号,使得程序认为找不到相应的 OpenGL 版本。百思不得其解,不应该啊,换了新系统程序就不能用了?在两个系统间来回切换对比后发现了问题的原因。 原来是我在 19.10 上没有安装独显的驱动,...
vs下执行OpenGl程序能运行成功但是不显示东西
vs下执行OpenGl程序能运行成功但是不<em>显示</em>东西
OpenGL图像显示和别人不一样
用老师给的源代码,原封不动运行,<em>图像</em>异常 原本应该是这样的 ![原本的样子](https://img-ask.csdn.net/upload/201909/20/1568908959_14748.png) 然后我电脑上是这样子的 ![我运行出来的样子](https://img-ask.csdn.net/upload/201909/20/1568908978_338083.png) 下面附上main.cpp的代码 (第一次遇到这样的问题,百度谷歌弄了一下午,把VS2013卸载安装了2019,还是搞不定,<em>求</em><em>大神</em><em>帮忙</em>,感激不尽) ``` #include "Angel.h" #pragma comment(lib, "glew32.lib") const int MENU_CHOICE_WHITE = 0; const int MENU_CHOICE_BLACK = 1; const int MENU_CHOICE_RED = 2; const int MENU_CHOICE_GREEN = 3; const int MENU_CHOICE_BLUE = 4; const int MENU_CHOICE_YELLOW = 5; const int MENU_CHOICE_ORANGE = 6; const int MENU_CHOICE_PURPLE = 7; const vec3 WHITE(1.0, 1.0, 1.0); const vec3 BLACK(0.0, 0.0, 0.0); const vec3 RED(1.0, 0.0, 0.0); const vec3 GREEN(0.0, 1.0, 0.0); const vec3 BLUE(0.0, 0.0, 1.0); const vec3 YELLOW(1.0, 1.0, 0.0); const vec3 ORANGE(1.0, 0.65, 0.0); const vec3 PURPLE(0.8, 0.0, 0.8); // 主<em>窗口</em>变量 const int SQUARE_NUM = 6; const int SQUARE_NUM_POINTS = 4 * SQUARE_NUM; int mainWindow; int mainWindowMenu; int mainWindowSubmenu; int width = 600; // 主<em>窗口</em>宽度 int height = 600; // 主<em>窗口</em>高度 double offsetAngle = 0; // 角度偏移量 double delta = 0.05; // 每次改变角度偏移的变化量 vec3 mainWindowSquareColor = WHITE; // 子<em>窗口</em>变量 const int ELLIPSE_NUM_POINTS = 100; int subWindow; int subWindowMenu; vec3 subWindowObjectColor = RED; // 获得圆上的点 vec2 getEllipseVertex(vec2 center, double scale, double verticleScale, double angle) { vec2 vertex(sin(angle), cos(angle)); vertex += center; vertex *= scale; vertex.y *= verticleScale; // 修改垂直分量 return vertex; } // 生成圆上顶点的属性 void generateEllipsePoints(vec2 vertices[], vec3 colors[], vec3 color, int startVertexIndex, int numPoints, vec2 center, double scale, double verticalScale) { double angleIncrement = (2 * M_PI) / numPoints; double currentAngle = M_PI / 2; for (int i = startVertexIndex; i < startVertexIndex + numPoints; i++) { vertices[i] = getEllipseVertex(center, scale, verticalScale, currentAngle); colors[i] = color; currentAngle += angleIncrement; } } // 获得正方形的每个角度 double getSquareAngle(int point) { return (M_PI / 4 + (M_PI / 2 * point)) + offsetAngle; } // 生成正方形上顶点的属性 void generateSquarePoints(vec2 vertices[], vec3 colors[], int squareNum, int startVertexIndex) { double scale = 0.90; double scaleAdjust = scale / squareNum; vec2 center(0.0, -0.25); int vertexIndex = startVertexIndex; for (int i = 0; i < squareNum; i++) { vec3 currentColor = 0 == i % 2 ? mainWindowSquareColor : BLACK; for (int j = 0; j < 4; j++) { double currentAngle = getSquareAngle(j); vertices[vertexIndex] = vec2(sin(currentAngle), cos(currentAngle)) * scale + center; colors[vertexIndex] = currentColor; vertexIndex++; } scale -= scaleAdjust; } } // 空闲回调函数 void idleFunction() { // 改变角度的偏移量 offsetAngle += delta; // 标记主<em>窗口</em>重绘 glutPostWindowRedisplay(mainWindow); } void mainWindowInit() { vec2 vertices[SQUARE_NUM * 4]; vec3 colors[SQUARE_NUM * 4]; // 创建主<em>窗口</em>中多个正方形 generateSquarePoints(vertices, colors, SQUARE_NUM, 0); // 创建顶点数组对象 GLuint vao[1]; glGenVertexArrays(1, vao); glBindVertexArray(vao[0]); // 创建并初始化顶点缓存对象 GLuint buffer; glGenBuffers(1, &buffer); glBindBuffer(GL_ARRAY_BUFFER, buffer); glBufferData(GL_ARRAY_BUFFER, sizeof(vertices) + sizeof(colors), NULL, GL_STATIC_DRAW); // 分别读取数据 glBufferSubData(GL_ARRAY_BUFFER, 0, sizeof(vertices), vertices); glBufferSubData(GL_ARRAY_BUFFER, sizeof(vertices), sizeof(colors), colors); // 读取着色器并使用 GLuint program = InitShader("vshader.glsl", "fshader.glsl"); glUseProgram(program); // 从顶点着色器中初始化顶点的位置 GLuint pLocation = glGetAttribLocation(program, "vPosition"); glEnableVertexAttribArray(pLocation); glVertexAttribPointer(pLocation, 2, GL_FLOAT, GL_FALSE, 0, BUFFER_OFFSET(0)); // 从片元着色器中初始化顶点的颜色 GLuint cLocation = glGetAttribLocation(program, "vColor"); glEnableVertexAttribArray(cLocation); glVertexAttribPointer(cLocation, 3, GL_FLOAT, GL_FALSE, 0, BUFFER_OFFSET(sizeof(vertices))); // 黑色背景 glClearColor(0.0, 0.0, 0.0, 1.0); } // 菜单回调函数 void mainWindowMenuEvents(int menuChoice) { switch (menuChoice) { case MENU_CHOICE_WHITE: mainWindowSquareColor = WHITE; break; case MENU_CHOICE_BLACK: mainWindowSquareColor = BLACK; break; case MENU_CHOICE_RED: mainWindowSquareColor = RED; break; case MENU_CHOICE_GREEN: mainWindowSquareColor = GREEN; break; case MENU_CHOICE_BLUE: mainWindowSquareColor = BLUE; break; case MENU_CHOICE_YELLOW: mainWindowSquareColor = YELLOW; break; case MENU_CHOICE_ORANGE: mainWindowSquareColor = ORANGE; break; case MENU_CHOICE_PURPLE: mainWindowSquareColor = PURPLE; break; /*在此处添加控制旋转动画开始和停止的菜单选项*/ } // 标记mainWindow主<em>窗口</em>进行重绘 glutPostWindowRedisplay(mainWindow); } // 创建和设置主<em>窗口</em>菜单 void mainWindowSetupMenu() { // 创建子菜单,并注册菜单回调函数mainWindowMenuEvents mainWindowSubmenu = glutCreateMenu(mainWindowMenuEvents); glutAddMenuEntry("Yellow", MENU_CHOICE_YELLOW); glutAddMenuEntry("Orange", MENU_CHOICE_ORANGE); glutAddMenuEntry("Purple", MENU_CHOICE_PURPLE); glutAddMenuEntry("Black", MENU_CHOICE_BLACK); // 创建主菜单 mainWindowMenu = glutCreateMenu(mainWindowMenuEvents); glutAddMenuEntry("Red", MENU_CHOICE_RED); glutAddMenuEntry("Green", MENU_CHOICE_GREEN); glutAddMenuEntry("Blue", MENU_CHOICE_BLUE); glutAddMenuEntry("White", MENU_CHOICE_WHITE); // 在主菜单中添加子菜单 glutAddSubMenu("Other Square Colors", mainWindowSubmenu); // 关联鼠标右键激活菜单 glutAttachMenu(GLUT_RIGHT_BUTTON); } void mainWindowDisplay() { mainWindowInit(); // 重绘时写入新的颜色数据 glClear(GL_COLOR_BUFFER_BIT); for (int i = 0; i < SQUARE_NUM; i++) { glDrawArrays(GL_TRIANGLE_FAN, (i * 4), 4); } glutSwapBuffers(); } // 主<em>窗口</em>键盘回调函数 void mainWindowKeyboard(unsigned char key, int x, int y) { /*在此添加按下Esc按键退出的代码*/ } // 主<em>窗口</em>鼠标回调函数 void mainWindowMouse(int button, int state, int x, int y) { if (button == GLUT_MIDDLE_BUTTON && state == GLUT_DOWN) { // 按下鼠标中键,指定当没有其他事件处理时,去调用idleFunction()这个函数 glutIdleFunc(idleFunction); } else if (button == GLUT_MIDDLE_BUTTON && state == GLUT_UP) { // 释放鼠标中键,解除调用 glutIdleFunc(NULL); } } void subWindowInit() { vec2 vertices[ELLIPSE_NUM_POINTS]; vec3 colors[ELLIPSE_NUM_POINTS]; // 创建子<em>窗口</em>中的椭圆 generateEllipsePoints(vertices, colors, subWindowObjectColor, 0, ELLIPSE_NUM_POINTS, vec2(0.0, 0.0), 0.7, 0.5); // 创建顶点数组对象 GLuint vao[1]; glGenVertexArrays(1, vao); glBindVertexArray(vao[0]); // 创建并初始化顶点缓存对象 GLuint buffer; glGenBuffers(1, &buffer); glBindBuffer(GL_ARRAY_BUFFER, buffer); glBufferData(GL_ARRAY_BUFFER, sizeof(vertices) + sizeof(colors), NULL, GL_STATIC_DRAW); // 分别读取数据 glBufferSubData(GL_ARRAY_BUFFER, 0, sizeof(vertices), vertices); glBufferSubData(GL_ARRAY_BUFFER, sizeof(vertices), sizeof(colors), colors); // 读取着色器并复用 GLuint program = InitShader("vshader.glsl", "fshader.glsl"); glUseProgram(program); // 从顶点着色器中初始化顶点的位置 GLuint pLocation = glGetAttribLocation(program, "vPosition"); glEnableVertexAttribArray(pLocation); glVertexAttribPointer(pLocation, 2, GL_FLOAT, GL_FALSE, 0, BUFFER_OFFSET(0)); // 从片元着色器中初始化顶点的颜色 GLuint cLocation = glGetAttribLocation(program, "vColor"); glEnableVertexAttribArray(cLocation); glVertexAttribPointer(cLocation, 3, GL_FLOAT, GL_FALSE, 0, BUFFER_OFFSET(sizeof(vertices))); // 设置子<em>窗口</em>背景颜色为白色 glClearColor(1.0, 1.0, 1.0, 1.0); } void subWindowDisplay() { subWindowInit(); // 重绘时写入新的颜色数据 glClear(GL_COLOR_BUFFER_BIT); glDrawArrays(GL_TRIANGLE_FAN, 0, ELLIPSE_NUM_POINTS); glutSwapBuffers(); } // 子<em>窗口</em>键盘回调函数 void subWindowKeyboard(unsigned char key, int x, int y) { switch (key) { case 'r': subWindowObjectColor = RED; break; case 'g': subWindowObjectColor = GREEN; break; case 'b': subWindowObjectColor = BLUE; break; case 'y': subWindowObjectColor = YELLOW; break; case 'o': subWindowObjectColor = ORANGE; break; case 'p': subWindowObjectColor = PURPLE; break; case 'w': subWindowObjectColor = WHITE; break; } // 标记subWindow子<em>窗口</em>进行重绘 glutPostWindowRedisplay(subWindow); } void printHelp() { printf("%s\n\n", "Interaction and Submenu"); printf("Keys to update the background color in sub window:\n"); printf("'r' - red\n'g' - green\n'b' - blue\n'y' - yellow\n'o' - orange\n'p' - purple\n'w' - white\n"); } int main(int argc, char **argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE); // 启用双重缓冲 glutInitWindowSize(width, height); mainWindow = glutCreateWindow("Interaction and Submenu"); glewExperimental = GL_TRUE; glewInit(); mainWindowInit(); mainWindowSetupMenu(); glutDisplayFunc(mainWindowDisplay); // 在主<em>窗口</em>中指定函数mainWindowMouse,在鼠标按下或释放时将会被调用 glutMouseFunc(mainWindowMouse); // 创建子<em>窗口</em> subWindow = glutCreateSubWindow(mainWindow, 0, 0, width / 4, height / 4); subWindowInit(); glutDisplayFunc(subWindowDisplay); // 在子<em>窗口</em>中指定函数subWindowKeyboard,当一个能够生成ASCII字符的键释放时会被调用 glutKeyboardFunc(subWindowKeyboard); // 输出帮助信息 printHelp(); glutMainLoop(); return 0; } ```
opengl入门例题(读取bmp图片,并显示
#include #define FileName "bliss.bmp" static GLint imagewidth; static GLint imageheight; static GLint pixellength; static GLubyte* pixeldata; #include #include void display(void) {  //glCl
opengl加载纹理,无法显示
一个OpenGL纹理加载程序,通过单步调试发现bmp加载成功,但纹理加载后就是无法<em>显示</em>,还请各位高手帮<em>帮忙</em>啊…… 现附上代码: #include #include <gl/glu
2016.11.1OpenGL学习,黑屏不显示图形
找了一个下午的原因:原句glBufferData(GLenum(GL_ARRAY_BUFFER),MemoryLayout.size(ofValue:vertices),vertices, GLenum(GL_STATIC_DRAW)), MemoryLayout.size(ofValue: vertices)值为8(应为32),在swift2中,sizeof方法被替换为MemoryLayout方
OpenGL中的VAO与VBO
VBO是Vertex Buffer Object, VAO是Vertex Array Object。 VAO是OpenGL 3.0以后才引入的新东西,但是在2.0版本中做为扩展接口。 VBO其实就是显卡中的显存,为了提高渲染速度,可以将要绘制的顶点数据缓存在显存中,这样就不需要将要绘制的顶点数据重复从CPU发送到GPU, 浪费带宽资源。 而VAO则是一个容器,可以包括多个VBO,  它类似于以
基于Qt的Opengles可编程管线学习——VAO(QOpenGLVertexArrayObject的使用)
标准OPenGLes2.0还没有引进VAO,应该是OpenGL3.0以后才有。不过Qt封装的OPenGLes2.0可以使用VAO,它就是QOpenGLVertexArrayObject。其用法与OpenGL3.0中的VAO用法一样。本文假设您熟悉OpenGL的vao。接下来我们一起来学习这个类的用法。 一、QOpenGLVertexArrayObject的使用流程 和VBO用法(可参考博主另外...
为什么简单的 opengl 代码却没有绘制出形状
2019独角兽企业重金招聘Python工程师标准&gt;&gt;&gt; ...
opengl 显示BMP图像
本想系统的学习一下OPENGL,最近几天跟蓝皮书的接触效果不太好,索性还是按照自己的想法来。 先<em>显示</em>一张图片吧,已经调试过的代码如下: #include &amp;lt;GLTools.h&amp;gt; // OpenGL toolkit #include &amp;lt;GLShaderManager.h&amp;gt; #ifdef __APPLE__ #include &amp;lt;glut/glut.h&amp;gt; #e...
OpenGL显示图片
最近想用C++在windows下实现一个基本的<em>图像</em>查看器功能,目前只想到了使用GDI或OpenGL两种方式。由于实在不想用GDI的API了,就用OpenGL的方式实现了一下基本的<em>显示</em>功能。用GDAL读取<em>图像</em>,这样就能与<em>图像</em>格式无关。OpenGL的glDrawPixels()函数也能实现<em>图像</em><em>显示</em>,但是现在高版本的OpenGL都采用glTexImage2D()贴纹理的方式了,也不用考虑<em>图像</em>大小是否是2的
opengl显示调试窗口
只<em>显示</em><em>opengl</em><em>窗口</em>,不<em>显示</em>调试窗的方法: 函数之前添加语句:#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" )
QOpenGLWidget显示图片
Qt<em>显示</em>图片的控件有很多,用QLabel,或者直接在界面上画出来。QOpenGLWidget是Qt5之后用来渲染OpenGL控件,使程序员对OpenGL的操作更简单,本文讲解用QOpenGLWidget来<em>显示</em>图片,后续讲解用QOpenGLWidget来<em>显示</em>视频。方法如下:1.在控件栏找到OpenGLWidget,拖到界面上2. 右键该控件提升为MyGLWidget, Qt提升控件类似于MFC的控...
glut为什么不能显示图形呀,黑屏?
各位老大,我是OpenGL的菜鸟。现在买了本OpenGL 编程指南(第六版),照着上面的例子,敲的代码运行时弹的window<em>窗口</em>是黑屏。简单的图形可以<em>显示</em>,但是复杂的好像就不行了,动画也不能<em>显示</em>,用的
我的OpenGL ES学习之路(三):图片显示
这次的任务是把一张图片用OpenGL ES的方式<em>显示</em>到屏幕上,部分功能使用了GLKit库。渲染上下文先来看一下程序中定义的属性:定义的属性.pngEGL连接了OpenGL ES与本地原生<em>窗口</em>(例如iOS系统)。Apple提供了自己的EGL的API,就是EGAL,EAGLContext就是属于EGAL。EAGLContext是渲染上下文,OpenGL ES 必须有一个可用的上下文才能绘图,因为一个应...
QOpenGLWidget空白不显示绘图内容
在做一个简单的基于Qt的OpenGL绘图的时候,发现通过调用Qt自带类QOpenGLWidget时,只<em>显示</em>背景颜色,不<em>显示</em>绘制的内容。 最初的代码如下: 头文件#ifndef MYOPENGLWIDGET_H #define MYOPENGLWIDGET_H#include #include class myOpenglWid
基于QOpenGLWidget自适应大小显示图片
一直想用OpenGL来<em>显示</em><em>图像</em>或者做视频播放器的<em>窗口</em>,网上找了很久,都没有Qt这方面最新的靠谱的例子,大部分都是3D模型上贴图,要不就是各种报错,或者Qt的OpenGL版本不对,自己摸索了好久,终于搞定了,是在QT5.6.3MinGW下编译的,可自适应<em>窗口</em>大小 部分代码如下: -----MyGLWidget.h------   #ifndef MYGLWIDGET_H #define...
********OpenGL,图形显示不出来,怎么回事************
/*Hand::Display()中用到Palm::Display(),但不 知道怎么回事,手掌Palm<em>显示</em>不出来。我在 glColor3f(.0f,1.0f,1.0f); 中改变颜色可以看到效果,但
为什么我用OpenGL画的图形显示不出来?
我在MFC下用OpenGL画了一条直线,但是不知道为什么<em>显示</em>不出来?请教高手!其中,View.cpp里的代码如下: void CLineView::OnDraw(CDC* pDC) { CLineDo
openGL显示透明图片
glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); 1.启用混合 2.设置颜色混合,透明度叠加计算
OpenGL中显示背景贴图
转载请声明出处: 导言: 通常在OpenGL里面绘制的都是默认的黑色背景,对于有些时候,太过于单调了,现在我们可以对它加上背景,实现一个不错的图形. 在网上看到人家要实现星空图,找到一张星空图片贴在背景上面. 看一下效果图 原理: 看一下下面的这张图: 这是OpenGL里面摄像机的原理图,我们要绘制的物体在离摄像机近的地方,那个离摄像机远的矩形
通过MFC编程的方式,采用OpenGL的方法显示BMP格式的图片,采用从图像数据流中装载图像的方法显示JPG格式的图片
用VS2008弄的,通过MFC编程的方式,采用OpenGL的方法<em>显示</em>BMP格式的图片,采用从<em>图像</em>数据流中装载<em>图像</em>的方法<em>显示</em>JPG格式的图片.压缩包中有程序运行后的界面,代码中有较详细的注释。
opengl画曲线怎么不显示呢?
#include "stdafx.h" #define GLUT_DISABLE_ATEXIT_HACK #include #include #includ
怎样在OpenGL程序中读取Jpg图象文件作为文理?
我只会读取bmp图片作为文理,可是Bmp图片实在太大了,而且从网上下载下来的绝大多数是jpg文件,要是能够读取jpg就好了. 下面是一段读取Bmp文件的程序,希望谁能帮我写一段读jpg文件的过程: i
OpenGL如何加载.png图片纹理
我的程序是VC6.0+OpengL的,现在有一张1024*1024的png图片,如何实现加载png图片纹理? oPengl只能实现直接加载bmp纹理吗?png格式的行不行?不行的话,该怎么实现? 麻烦
opengl显示不出来图案,不知道是什么问题
一下是我编的程序: void CCCView::OnDraw(CDC* pDC) { CCCDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // 获取设备
奇怪的OPENGL不显示问题,高分
问题描述起来比较复杂,请耐心看完,多谢 我在自己的一台电脑(A电脑)上建立一个基于对话框的工程,希望能够在对话框中添加一个view,以便在view中使用<em>opengl</em>.于是我在对话框中添加一个pictu
VC+opengl 帮忙看看这段贴纹理的代码为什么就是显示不出来
最近刚刚开始接触<em>opengl</em>,想自绘一套3d效果的控件。现在遇到一个问题就是-控件背景透明。试了一转最后还是觉得把背景抠出来当做纹理贴上去比较可行。图现在是抠出来了,可是就是贴不上啊。 相关代码如下:
OPENGL学习系列一:图形显示不出来(附代码)
#include "stdafx.h" #include void Init() { glClearColor(0,0,0,1); } void Display() { glC
opengl android,为什么我的三角形不显示都是照着写的我的render哪里写错了吗
package com.cheerchip.<em>opengl</em>5; import android.<em>opengl</em>.GLES20; import android.<em>opengl</em>.GLSurfaceView; import android.<em>opengl</em>.Matrix; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.FloatBuffer; import javax.microedition.khronos.egl.EGLConfig; import javax.microedition.khronos.<em>opengl</em>es.GL10; /** * Created by noname on 2017/6/28. */ public class GLRender implements GLSurfaceView.Renderer { //顶点颜色 private final String vertexShaderCode = "attribute vec4 vPosition;" + "void main() {" + " gl_Position = vPosition;" + "}"; //片元颜色 private final String fragmentShaderCode = "precision mediump float;" + "uniform vec4 vColor;" + "void main() {" + " gl_FragColor = vColor;" + "}"; private int programs; //三角形顶点 private float[] vertexes = new float[]{ 1f, 0f, 0f, 0f, 1f, 0f, -1f, 0f, 0f }; private FloatBuffer floatBuffer; @Override public void onSurfaceCreated(GL10 gl, EGLConfig config) { GLES20.glClearColor(0.5f,0.5f,0.5f,1.0f);//设置背景色灰色 init(); //生成shader调色板 //顶点和片元一般两种 int verextype = GLES20.glCreateShader(GLES20.GL_VERTEX_SHADER); GLES20.glShaderSource(verextype, vertexShaderCode); GLES20.glCompileShader(verextype); int fragmenttype = GLES20.glCreateShader(GLES20.GL_FRAGMENT_SHADER); GLES20.glShaderSource(fragmenttype, fragmentShaderCode); GLES20.glCompileShader(fragmenttype); // GLES20. programs = GLES20.glCreateProgram(); //连接到调色板 GLES20.glAttachShader(programs, verextype); GLES20.glAttachShader(programs, fragmenttype); //连接programs GLES20.glLinkProgram(programs); } @Override public void onSurfaceChanged(GL10 gl, int width, int height) { GLES20.glViewport(0,0,width,height); float ratio = (float) width / height; // create a projection matrix from device screen geometry //Matrix.frustumM(mProjMatrix, 0, -ratio, ratio, -1, 1, 3, 7); } @Override public void onDrawFrame(GL10 gl) { GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT|GLES20.GL_DEPTH_BUFFER_BIT); GLES20.glUseProgram(programs); //获取顶点着色器的vPosition成员句柄 int mPositionHandle = GLES20.glGetAttribLocation(programs, "vPositon"); //启用三角形顶点的句柄 GLES20.glEnableVertexAttribArray(mPositionHandle); //准备三角形数据3*4顶点偏移量 GLES20.glVertexAttribPointer(mPositionHandle,3,GLES20.GL_FLOAT,false,3*4,floatBuffer); int uniformhandle= GLES20.glGetUniformLocation(programs,"vColor"); //绘制颜色 GLES20.glUniform4fv(uniformhandle,1,color,0); //h绘制<em>图像</em> GLES20.glDrawArrays(GLES20.GL_TRIANGLES,0,3); GLES20.glDisableVertexAttribArray(mPositionHandle); } //设置颜色,依次为红绿蓝和透明通道 float color[] = { 1.0f, 1.0f, 1.0f, 1.0f }; // 准备数据 private void init(){ ByteBuffer buffer=ByteBuffer.allocateDirect(vertexes.length*4);//每个数4个字节 buffer.order(ByteOrder.nativeOrder()); floatBuffer = buffer.asFloatBuffer(); floatBuffer.put(vertexes); floatBuffer.position(0); } }
OpenGL-显示简单的线段
 #include&amp;lt;GL/glut.h&amp;gt;void init(void){ glClearColor(1.0,1.0,1.0,0.0);//将<em>显示</em><em>窗口</em>的背景颜色设为白色,第四个参数为调和参数 glMatrixMode(GL_PROJECTION);// glLoadIdentity(); gluOrtho2D(0.0,400.0,0.0,150.0);}void lineSegment...
OpenGL(三) 加载贴图
有了模型还需要贴图。 加载贴图 的流程大体分为两部分,首先是图片的解码,其次是使用UV坐标与模型对应。本文主要从底层原理和第三方库两个方面来介绍 加载贴图 。下面分别介绍硬编码实现和SOIL库两种方式。因为加载不同的类型图片偏移值不一样,加载图片之前要确定图片类型...
OpenGL的纹理显示-笔记
定义顶点数组vertex array:-1到1之间及纹理坐标(0到1之间)生成纹理: glGenTextures绑定纹理: glBindTexture: 参数GL_TEXTURE_2D告诉<em>opengl</em>,这应该被作为一个二维纹理对待加载纹理到Opengl: texImage2D,把位图数据复制到当前绑定的纹理对象增加vertex shader: 顶点坐标(-1到1之间),纹理坐标(0到1之间,S坐标
解决 OpenGL ES 纹理贴图在真机上无法显示的问题
问题:在OpenGL ES上 纹理贴图  放到真机上无法<em>显示</em>,<em>显示</em>出来效果是白色的平面 解决方法:其实和图片尺寸,大小,格式并无必然联系,只需在每次调用 GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, bmp, 0); 生成纹理后设置线性滤波(注意 是每次) gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.
opengl 显示图片以及保存图片
<em>opengl</em> 的贴图功能是很基本的,不过也难住了我这个新手,所以特意写了一个示例程序,以便以后查阅。 程序很简单,只是在在 x, y 平面画一个框,然后贴上一张图。并且可以保存<em>opengl</em><em>窗口</em>到图片。 //本程序的目的是展示贴图和保存图片 #include #include #include #include #include using namespace cv
android 使用 opengl 2.0 显示一张静态背景图片,效果显示出来的很奇怪
背景原图是: ![图片说明](https://img-ask.csdn.net/upload/201508/15/1439633444_381670.jpg) <em>显示</em>的效果却是: ![图片说明](https://img-ask.csdn.net/upload/201508/15/1439633465_796588.png) 我不知道我的代码错在哪了。请有OpenGL开发经验的兄弟<em>帮忙</em>下。我的代码如下: ``` public class BackgroundGLRnder implements GLSurfaceView.Renderer { // Our matrices private final float[] mtrxProjection = new float[16]; private final float[] mtrxView = new float[16]; private final float[] mtrxProjectionAndView = new float[16]; // Geometric variables private float vertices[]; private static float uvs[] = new float[] { 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.0f }; private static short indices[] = new short[]{ 0, 1, 2, 0, 2, 3}; private FloatBuffer vertexBuffer; private ShortBuffer drawListBuffer; private FloatBuffer uvBuffer; // Our screenresolution private float mScreenWidth = 0; private float mScreenHeight = 0; // Misc private Context mContext; private int mProgramHandle; private int mTextureDataHandle0; /** This will be used to pass in the transformation matrix. */ private int mMVPMatrixHandle; /** This will be used to pass in the texture. */ private int mTextureUniformHandle0; /** This will be used to pass in model position information. */ private int mPositionHandle; /** This will be used to pass in model color information. */ // private int mColorHandle; /** This will be used to pass in model texture coordinate information. */ private int mTextureCoordinateHandle; public BackgroundGLRnder(Context c) { mContext = c; } @Override public void onSurfaceCreated(GL10 gl, EGLConfig config) { SetupImage(); // Set the clear color to black GLES20.glClearColor(0.0f, 0.0f, 0.0f, 1); final String vertexShader = getVertexShader(); final String fragmentShader = getFragmentShader(); final int vertexShaderHandle = ShaderHelper.compileShader(GLES20.GL_VERTEX_SHADER, vertexShader); final int fragmentShaderHandle = ShaderHelper.compileShader( GLES20.GL_FRAGMENT_SHADER, fragmentShader); mProgramHandle = ShaderHelper.createAndLinkProgram(vertexShaderHandle, fragmentShaderHandle, new String[] { "a_Position", "a_TexCoordinate" }); // Set our per-vertex lighting program. GLES20.glUseProgram(mProgramHandle); } @Override public void onSurfaceChanged(GL10 gl, int width, int height) { mScreenWidth = width; mScreenHeight = height; // Redo the Viewport, making it fullscreen. GLES20.glViewport(0, 0, (int) mScreenWidth, (int) mScreenHeight); // Clear our matrices for(int i=0;i) int height = wm.getDefaultDisplay().getHeight();// 屏幕高度 return height; } ```
OPENGL快速显示高清图像数据
有没有谁能告诉一下,如何用OPENGL快速的<em>显示</em>出<em>图像</em>数据呢,<em>图像</em>数据有8M, 1920*1080*32bit,因为要支持播放所以,需要速度跟的上,麻烦哪位<em>大神</em>指点一下如何用<em>opengl</em>来实现 ps:
新手教OpenGL如何导入外部图片
现在需要把外部图片导入作为纹理使用 指定纹理<em>图像</em>的函数 glTexImage2D( target, level, components,w, h, border, format, type, texe
opengl下png图片的加载与显示
首先说明 部分代码来自http://www.cnblogs.com/IamEasy_Man/archive/2009/12/14/1624023.html。至于里面的源地址什么的我不管。 然后吐槽,国内的资料各种坑爹,竟没有一个肯老老实实的把png加载与<em>显示</em>做完的,也许是太简单?模板测试我也没找到。这个例子是模板测试的前置工程而已。。。 再吐槽,百度搜到的某偏 windows下<em>opengl</em>秒加
Android OpenGLES2.0(八)——纹理贴图之显示图片
前面几篇博客,我们将了Android中利用OpenGL ES 2.0绘制各种形体,并在上一篇博客中专门讲了GLSL语言。但是我们看到的基于OpenGL开发的应用和游戏,可不仅仅是那些规则形体和一些简单的色彩构成,而是各种不规则的形体构成了现实世界或者卡通世界的人和事物,他们都是外面穿着漂亮“衣服”的。本篇博客就是来讲解这些“衣服”的基础的。这些衣服就是纹理贴图。什么是纹理贴图 一般说来,纹理是表
OpenGL ES总结(三)OpenGL通过计算纹理坐标来显示一张图片
通过OpenGL来<em>显示</em>一张汽车图片,图片可以看做一个矩形,所以我们先来画一个矩形OpenGL的基本形状是三角形,一个矩形可以看成由4个三角形构成
opengl打开jpeg图片
<em>opengl</em>没有提供直接函数来打开jpeg、png之类的压缩图片, 目前可用的方法有:1. 调用第三方库打开图片,比如opencv等;2.直接利用系统提供的函数打开图片。对于写个demo之类的小程序,直接引入opencv显然是没有必要的,这里就介绍mac下如果读取jpeg的图片的方法。具体实现如下:unsigned char* readImageData(const char* file_name,
OpenGL显示2D图片的问题,高分紧急请教!
我现在遇到的问题是 1 OpenGL<em>显示</em>2D图片时,其效果是否能够达到原图效果?(我试过网上的代码,256*256大小的图片,<em>显示</em>不能达到原图效果.) 2 是否<em>显示</em>的图片宽度和高度必须是2的幂,<em>显示</em>的
OpenGL下实现图片满屏显示
实现图片满屏<em>显示</em>,最常用的用途是把一张图片作为<em>显示</em>窗体的背景图片。我这里有总两种方法:  一、 正交模式<em>显示</em>背景图片 关闭深度测试正交投影设置四边形的尺寸为<em>窗口</em>四个角,将图片贴到Quad上切换到透视模式下开启深度测试<em>显示</em>三维场景 绘制背景图片时必须关闭深度测试,否则会导致后面渲染的3d场景不能<em>显示</em>。  在绘制3d场景时开启深度测试是为了保证3D模型绘制的正确性,主要指彼此的遮挡
OpenGL之图片色彩处理(三)
一、OpenGL图片绘制的一般步骤:    1、编写顶点着色器和片元着色器;    2、编写需要绘制的图形类,包括:加载着色器脚本内容,加载图片数据,图片绘制;    3、配置绘制环境,绘制图片。二、具体如下:   1、 编写顶点着色器程序(glsl语言):attribute vec4 vPosition; attribute vec2 vCoordinate;//纹理数据 uniform mat...
Windows下OpenGL轻松加载BMP, GIF, JPEG, PNG, and TIFF图片
Windows下轻松加载BMP, GIF, JPEG, PNG, and TIFF图片,并用OpenGL生成纹理 /* window下OpenGL加载纹理,图片格式BMP, GIF, JPEG, PNG, and TIFF -----------jiese1990 我要加载一个jpg图片有人叫我用OpenCV来读图片再用OpenGL来生成纹理; 我了个去,Ope
大神指教用C#引用OPENGL图形不显示代码如下
我用C#创建了一个窗体文件但是编码后<em>显示</em>不出图形,编码如下: using System; using System.Collections.Generic; using System.Componen
QOpenGLWidget图像显示不出
一个简单程序中,继承与QOpenGLWidget的自定义类,编译没有问题,但是执行的时候一片空白,没有绘制出所需的点,怎么回事啊?继承类代码如下: .h #ifndef MYOPENGLWINDOW_
opengl显示图像的问题
我想在我的<em>窗口</em>中<em>显示</em>一个bmp<em>图像</em>,该<em>图像</em>比我的<em>窗口</em>要大很多,我想通过鼠标的拖动方式来拖动<em>图像</em>。请问该用什么方法? <em>图像</em><em>显示</em>的方法是:我首先载入bitmap信息在一个数组中,然后使用gldrawpix
openGL显示3d 点云图像
刚学习openGL,所以想写个<em>opengl</em> <em>显示</em>3d 点云的例子,但是由于一些东西还太理不清楚,所以有些问题 没有得到理想的效果,现将代码贴在这里,期待高手解惑。 主要步骤如下: 1,通过opencv读取rgb图和depth图,得到一个4通道的float矩阵,其中前三个通道存储x, y, z的信息,最后一个通道则存储4个uint8 RGBA颜色信息: 2,产生VAO,VBO绑定,并分配数
OpenGL 显示DICOM医学图像
OpenGL <em>显示</em>DICOM医学<em>图像</em>                                                                                                                                                 关键词:OpenGL、GLSL、DICOM 一、数据读取
《MySQL 性能优化》之理解 MySQL 体系结构
本文介绍 MySQL 的体系结构,包括物理结构、逻辑结构以及插件式存储引擎。
程序员请照顾好自己,周末病魔差点一套带走我。
程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。
卸载 x 雷某度!GitHub 标星 1.5w+,从此我只用这款全能高速下载工具!
作者 | Rocky0429 来源 | Python空间 大家好,我是 Rocky0429,一个喜欢在网上收集各种资源的蒟蒻… 网上资源眼花缭乱,下载的方式也同样千奇百怪,比如 BT 下载,磁力链接,网盘资源等等等等,下个资源可真不容易,不一样的方式要用不同的下载软件,因此某比较有名的 x 雷和某度网盘成了我经常使用的工具。 作为一个没有钱的穷鬼,某度网盘几十 kb 的下载速度让我...
Python+OpenCV实时图像处理
目录 1、导入库文件 2、设计GUI 3、调用摄像头 4、实时<em>图像</em>处理 4.1、阈值二值化 4.2、边缘检测 4.3、轮廓检测 4.4、高斯滤波 4.5、色彩转换 4.6、调节对比度 5、退出系统 初学OpenCV<em>图像</em>处理的小伙伴肯定对什么高斯函数、滤波处理、阈值二值化等特性非常头疼,这里给各位分享一个小项目,可通过摄像头实时动态查看各类<em>图像</em>处理的特点,也可对各位调参、测试...
2020年一线城市程序员工资大调查
人才需<em>求</em> 一线城市共发布岗位38115个,招聘120827人。 其中 beijing 22805 guangzhou 25081 shanghai 39614 shenzhen 33327 工资分布 2020年中国一线城市程序员的平均工资为16285元,工资中位数为14583元,其中95%的人的工资位于5000到20000元之间。 和往年数据比较: yea...
为什么猝死的都是程序员,基本上不见产品经理猝死呢?
相信大家时不时听到程序员猝死的消息,但是基本上听不到产品经理猝死的消息,这是为什么呢? 我们先百度搜一下:程序员猝死,出现将近700多万条搜索结果: 搜索一下:产品经理猝死,只有400万条的搜索结果,从搜索结果数量上来看,程序员猝死的搜索结果就比产品经理猝死的搜索结果高了一倍,而且从下图可以看到,首页里面的五条搜索结果,其实只有两条才是符合条件。 所以程序员猝死的概率真的比产品经理大,并不是错...
害怕面试被问HashMap?这一篇就搞定了!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java集合中的精髓了,如果你觉得自己对它掌握的还不够好,我想今天这篇文章会非常适合你,至少,看了今天这篇文章,以后不怕面试被问HashMap了 其实在我学习HashMap的过程中,我个人觉得HashMap还是挺复杂的,如果真的想把它搞得明明白...
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
我问了身边10个大佬,总结了他们的学习方法,原来成功都是有迹可循的。
python爬取百部电影数据,我分析出了一个残酷的真相
2019年就这么匆匆过去了,就在前几天国家电影局发布了2019年中国电影市场数据,数据<em>显示</em>去年总票房为642.66亿元,同比增长5.4%;国产电影总票房411.75亿元,同比增长8.65%,市场占比 64.07%;城市院线观影人次17.27亿,同比增长0.64%。 看上去似乎是一片大好对不对?不过作为一名严谨<em>求</em>实的数据分析师,我从官方数据中看出了一点端倪:国产票房增幅都已经高达8.65%了,为什...
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推...
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了????,这可都是提升你幸福感的高效率生产力工具哦! 走起!???? NO、1 ScreenToGif 屏幕,摄像头和白板...
阿里面试,面试官没想到一个ArrayList,我都能跟他扯半小时
我是真的没想到,面试官会这样问我ArrayList。
曾经优秀的人,怎么就突然不优秀了。
职场上有很多辛酸事,很多合伙人出局的故事,很多技术骨干被裁员的故事。说来模板都类似,曾经是名校毕业,曾经是优秀员工,曾经被领导表扬,曾经业绩突出,然而突然有一天,因为种种原因,被裁员了,...
大学四年因为知道了这32个网站,我成了别人眼中的大神
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我<em>大神</em>的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
良心推荐,我珍藏的一些Chrome插件
上次搬家的时候,发了一个朋友圈,附带的照片中不小心暴露了自己的 Chrome 浏览器插件之多,于是就有小伙伴评论说分享一下我觉得还不错的浏览器插件。 我下面就把我日常工作和学习中经常用到的一些 Chrome 浏览器插件分享给大家,随便一个都能提高你的“生活品质”和工作效率。 Markdown Here Markdown Here 可以让你更愉快的写邮件,由于支持 Markdown 直接转电子邮...
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每...
C#编程知识点总结51-60C#编程知识点总结下载
C#编程知识点总结C#编程知识点总结C#编程知识点总结 相关下载链接:[url=//download.csdn.net/download/huhuateng/3220063?utm_source=bbsseo]//download.csdn.net/download/huhuateng/3220063?utm_source=bbsseo[/url]
ssh2整合实例下载
项目实现了三大框架整合(含jar包), 实现了登录权限拦截 实现了分页功能 实现了公共dao 使用dbcp数据源 spring事务管理 log4j日志管理 相关下载链接:[url=//download.csdn.net/download/donghero2010/4375596?utm_source=bbsseo]//download.csdn.net/download/donghero2010/4375596?utm_source=bbsseo[/url]
FYBJ-dos game下载
DOS game FYBJ dos老游戏 大眼猫咪版本 相关下载链接:[url=//download.csdn.net/download/u013572866/6889647?utm_source=bbsseo]//download.csdn.net/download/u013572866/6889647?utm_source=bbsseo[/url]
我们是很有底线的