最終更新: mikk_ni3_92 2007年12月23日(日) 15:34:52履歴
現在地 >> メニュー >> サンプルコード::OpenGL >> OpenGL+OpenCV::ウィンドウ
#include <cstdio>
#include <iostream>
#include <GL/glut.h>
#include <cv.h>
#include <highgui.h>
using namespace std;
/* コールバック系 */
void display();
void reshape(int w, int h);
/************ OpenGL の初期設定 *************/
inline void GLUT_INIT()
{
glutInitDisplayMode(GLUT_RGBA| GLUT_DOUBLE | GLUT_DEPTH);
glutInitWindowSize(200,200);
}
inline void GLUT_CALL_FUNC()
{
glutDisplayFunc(display);
glutReshapeFunc(reshape);
}
inline void MY_INIT()
{
glClearColor(1.0, 1.0, 1.0, 1.0);
}
/************ OpenCV関係 *****************/
void CV_SET_UP()
{
cvNamedWindow("OpenCV",CV_WINDOW_AUTOSIZE);
}
/************ main 関数 ********************/
int main(int argc, char ** argv)
{
glutInit(&argc,argv);
GLUT_INIT();
glutCreateWindow("OpenGL");
GLUT_CALL_FUNC();
MY_INIT();
CV_SET_UP(); //OpenCV関係
glutMainLoop();
return 0;
}
/********[ここから各種コールバック]****************************************/
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glutSwapBuffers();
}
void reshape(int w, int h)
{
glViewport(0, 0, w, h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glFrustum(-1,1,-1,1,3,20);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}
#include <cstdio>
#include <iostream>
#include <GL/glut.h>
#include <cv.h>
#include <highgui.h>
using namespace std;
/* コールバック系 */
void display();
void reshape(int w, int h);
/************ OpenGL の初期設定 *************/
inline void GLUT_INIT()
{
glutInitDisplayMode(GLUT_RGBA| GLUT_DOUBLE | GLUT_DEPTH);
glutInitWindowSize(200,200);
}
inline void GLUT_CALL_FUNC()
{
glutDisplayFunc(display);
glutReshapeFunc(reshape);
}
inline void MY_INIT()
{
glClearColor(1.0, 1.0, 1.0, 1.0);
}
/************ OpenCV関係 *****************/
void CV_SET_UP()
{
cvNamedWindow("OpenCV",CV_WINDOW_AUTOSIZE);
}
/************ main 関数 ********************/
int main(int argc, char ** argv)
{
glutInit(&argc,argv);
GLUT_INIT();
glutCreateWindow("OpenGL");
GLUT_CALL_FUNC();
MY_INIT();
CV_SET_UP(); //OpenCV関係
glutMainLoop();
return 0;
}
/********[ここから各種コールバック]****************************************/
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glutSwapBuffers();
}
void reshape(int w, int h)
{
glViewport(0, 0, w, h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glFrustum(-1,1,-1,1,3,20);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}