OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
OpenGL支持

详细描述

函数

void cv::imshow (const String &winname, const ogl::Texture2D &tex)
 在指定窗口中显示 OpenGL 2D 纹理。
 
void cv::setOpenGlContext (const String &winname)
 将指定窗口设置为当前OpenGL上下文。
 
void cv::setOpenGlDrawCallback (const String &winname, OpenGlDrawCallback onOpenGlDraw, void *userdata=0)
 设置一个回调函数,用于在显示的图像上进行绘制。
 
void cv::updateWindow (const String &winname)
 强制窗口重新绘制其上下文并调用绘制回调(参见 cv::setOpenGlDrawCallback)。
 

函数文档

◆ imshow()

void cv::imshow ( const String & 窗口名称,
const ogl::Texture2D & tex )
Python
cv.imshow(winname, mat) ->

#include <opencv2/highgui.hpp>

在指定窗口中显示 OpenGL 2D 纹理。

参数
窗口名称窗口名称。
texOpenGL 2D 纹理数据。

◆ setOpenGlContext()

void cv::setOpenGlContext ( const String & 窗口名称)

#include <opencv2/highgui.hpp>

将指定窗口设置为当前OpenGL上下文。

参数
窗口名称窗口名称。

◆ setOpenGlDrawCallback()

void cv::setOpenGlDrawCallback ( const String & 窗口名称,
OpenGlDrawCallback onOpenGlDraw,
void * userdata = 0 )

#include <opencv2/highgui.hpp>

设置一个回调函数,用于在显示的图像上进行绘制。

函数 setOpenGlDrawCallback 可用于在窗口上绘制 3D 数据。请参阅下面的回调函数示例

void on_opengl(void* param)
{
glLoadIdentity();
glTranslated(0.0, 0.0, -1.0);
glRotatef( 55, 1, 0, 0 );
glRotatef( 45, 0, 1, 0 );
glRotatef( 0, 0, 0, 1 );
static const int coords[6][4][3] = {
{ { +1, -1, -1 }, { -1, -1, -1 }, { -1, +1, -1 }, { +1, +1, -1 } },
{ { +1, +1, -1 }, { -1, +1, -1 }, { -1, +1, +1 }, { +1, +1, +1 } },
{ { +1, -1, +1 }, { +1, -1, -1 }, { +1, +1, -1 }, { +1, +1, +1 } },
{ { -1, -1, -1 }, { -1, -1, +1 }, { -1, +1, +1 }, { -1, +1, -1 } },
{ { +1, -1, +1 }, { -1, -1, +1 }, { -1, -1, -1 }, { +1, -1, -1 } },
{ { -1, -1, +1 }, { +1, -1, +1 }, { +1, +1, +1 }, { -1, +1, +1 } }
};
for (int i = 0; i < 6; ++i) {
glColor3ub( i*20, 100+i*10, i*42 );
glBegin(GL_QUADS);
for (int j = 0; j < 4; ++j) {
glVertex3d(0.2 * coords[i][j][0], 0.2 * coords[i][j][1], 0.2 * coords[i][j][2]);
}
glEnd();
}
}
参数
窗口名称窗口名称。
onOpenGlDraw指向每帧调用的函数的指针。该函数应原型化为 void Foo(void*) 。
用户数据传递给回调函数的指针。(可选

◆ updateWindow()

void cv::updateWindow ( const String & 窗口名称)

#include <opencv2/highgui.hpp>

强制窗口重新绘制其上下文并调用绘制回调(参见 cv::setOpenGlDrawCallback)。

参数
窗口名称窗口名称。