void cv::render(const GlTexture& tex, Rect_<double> wndRect, Rect_<double> texRect) { #ifndef HAVE_OPENGL (void)tex; (void)wndRect; (void)texRect; throw_nogl; #else if (!tex.empty()) { tex.bind(); glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE); glBegin(GL_QUADS); glTexCoord2d(texRect.x, texRect.y); glVertex2d(wndRect.x, wndRect.y); glTexCoord2d(texRect.x, texRect.y + texRect.height); glVertex2d(wndRect.x, (wndRect.y + wndRect.height)); glTexCoord2d(texRect.x + texRect.width, texRect.y + texRect.height); glVertex2d(wndRect.x + wndRect.width, (wndRect.y + wndRect.height)); glTexCoord2d(texRect.x + texRect.width, texRect.y); glVertex2d(wndRect.x + wndRect.width, wndRect.y); glEnd(); CV_CheckGlError(); tex.unbind(); } #endif }