Loading openglcanvas.cpp +13 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,10 @@ } #endif #ifndef _MSC_VER #define PROGNAME "pano_interface" #endif #define VERT_SHADER_FILE "test_vertex_shader.vert" #define FRAG_SHADER_FILE "fragment_shader.frag" Loading Loading @@ -310,7 +313,10 @@ enum FileType OpenGLCanvas::get_file_type(const char *filename){ void OpenGLCanvas::load_image(const char *new_image){ int width,height; #ifndef _MSC_VER // the progname is only used for reading the PNM format const char * const progname=(char*)(PROGNAME); #endif unsigned char *textureBytes=NULL; int textureSize; switch(get_file_type(new_image)){ Loading @@ -320,12 +326,14 @@ void OpenGLCanvas::load_image(const char *new_image){ textureBytes=(unsigned char*)malloc(textureSize); jpgReadTextureBytes(new_image,textureBytes,&width,&height); break; #ifndef _MSC_VER case PNM: fprintf(stderr,"input image has PNM format\n"); textureSize=pnmGetTextureSize(progname,new_image); textureBytes=(unsigned char*)malloc(textureSize); pnmReadTextureBytes(progname,new_image,textureBytes,&width,&height); break; #endif default: // UNKNOWN fprintf(stderr,"%s: unknown file format\n",new_image); exit(-1); Loading @@ -352,14 +360,16 @@ void OpenGLCanvas::initializeGL(){ glDepthFunc(GL_LEQUAL); glHint(GL_PERSPECTIVE_CORRECTION_HINT,GL_NICEST); #ifndef _MSC_VER #ifdef __APPLE__ const char * const progname = "PROJ_ROOT_DIR"; #else // progname is a file name or a path??? const char * const progname = (char*)(PROGNAME); #endif fprintf(stderr,"progname=%s\n",progname); #endif // MSC_VER read_config_file(); // If the input file does not exist or was not specified. struct stat testbuf; Loading Loading @@ -599,6 +609,7 @@ void OpenGLCanvas::define_triangle_indices(unsigned int * indices, int m, int n) } #ifndef _MSC_VER int OpenGLCanvas::pnmGetTextureSize(const char * const progname, const char * texturePath) { struct pam inpam; Loading Loading @@ -657,6 +668,7 @@ void OpenGLCanvas::pnmReadTextureBytes(const char * const progname, pm_close(in_file); } #endif int OpenGLCanvas::jpgGetTextureSize(const char *texturePath) { Loading openglcanvas.h +4 −0 Original line number Diff line number Diff line Loading @@ -35,11 +35,13 @@ #endif #include "chronos.h" #ifndef _MSC_VER extern "C" { #include <ppm.h> #include <pm.h> #include <pam.h> } #endif #include <jpeglib.h> Loading @@ -66,8 +68,10 @@ protected: void load_sphere_mesh(float *positions, int m, int n); float calculate_extent(float fov_rads); void define_triangle_indices(unsigned int * indices, int m, int n); #ifndef _MSC_VER int pnmGetTextureSize(const char *const progname, const char *texturePath); void pnmReadTextureBytes(const char *const progname, const char *texturePath,unsigned char *textureBytes,int *outImageWidth,int *outImageHeight); #endif int jpgGetTextureSize(const char *texturePath); void jpgReadTextureBytes(const char *texturePath,unsigned char *textureBytes,int *outImageWidth,int *outImageHeight); char *textFileRead(char *fn); Loading pano_interface_1.pro +12 −11 Original line number Diff line number Diff line Loading @@ -45,17 +45,18 @@ LIBS += -lm -lglut -lGL -lGLEW -lnetpbm -ljpeg win32 { DEFINES += GLEW_STATIC INCLUDEPATH += "C:/Program Files (x86)/glew-1.9.0/include" DEPENDPATH += "C:/Program Files (x86)/glew-1.9.0/include" INCLUDEPATH += "C:/Program Files (x86)/freeglut/include" DEPENDPATH += "C:/Program Files (x86)/freeglut/include" INCLUDEPATH += "C:/Program Files (x86)/GnuWin32/include" DEPENDPATH += "C:/Program Files (x86)/GnuWin32/include" LIBS += -L"C:/Program Files (x86)/freeglut/lib" LIBS += -L"C:/Program Files (x86)/GnuWin32/lib" LIBS += -L"C:/Program Files (x86)/GnuWin32/bin" LIBS += -L"C:/Program Files (x86)/glew-1.9.0/lib" LIBS += -lglew32s -lfreeglut -lglu32 -lopengl32 -llibnetpbm10 PFROOT = "C:/Program Files" INCLUDEPATH += $${PFROOT}/glew-1.9.0/include DEPENDPATH += $${PFROOT}/glew-1.9.0/include INCLUDEPATH += $${PFROOT}/freeglut/include DEPENDPATH += $${PFROOT}/freeglut/include INCLUDEPATH += $${PFROOT}/GnuWin32/include DEPENDPATH += $${PFROOT}/GnuWin32/include LIBS += -L$${PFROOT}/freeglut/lib LIBS += -L$${PFROOT}/GnuWin32/lib LIBS += -L$${PFROOT}/GnuWin32/bin LIBS += -L$${PFROOT}/glew-1.9.0/lib LIBS += -lglew32s -lfreeglut -lglu32 -lopengl32 -ljpeg #-llibnetpbm10 } TARGET = pano_interface_1 Loading Loading
openglcanvas.cpp +13 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,10 @@ } #endif #ifndef _MSC_VER #define PROGNAME "pano_interface" #endif #define VERT_SHADER_FILE "test_vertex_shader.vert" #define FRAG_SHADER_FILE "fragment_shader.frag" Loading Loading @@ -310,7 +313,10 @@ enum FileType OpenGLCanvas::get_file_type(const char *filename){ void OpenGLCanvas::load_image(const char *new_image){ int width,height; #ifndef _MSC_VER // the progname is only used for reading the PNM format const char * const progname=(char*)(PROGNAME); #endif unsigned char *textureBytes=NULL; int textureSize; switch(get_file_type(new_image)){ Loading @@ -320,12 +326,14 @@ void OpenGLCanvas::load_image(const char *new_image){ textureBytes=(unsigned char*)malloc(textureSize); jpgReadTextureBytes(new_image,textureBytes,&width,&height); break; #ifndef _MSC_VER case PNM: fprintf(stderr,"input image has PNM format\n"); textureSize=pnmGetTextureSize(progname,new_image); textureBytes=(unsigned char*)malloc(textureSize); pnmReadTextureBytes(progname,new_image,textureBytes,&width,&height); break; #endif default: // UNKNOWN fprintf(stderr,"%s: unknown file format\n",new_image); exit(-1); Loading @@ -352,14 +360,16 @@ void OpenGLCanvas::initializeGL(){ glDepthFunc(GL_LEQUAL); glHint(GL_PERSPECTIVE_CORRECTION_HINT,GL_NICEST); #ifndef _MSC_VER #ifdef __APPLE__ const char * const progname = "PROJ_ROOT_DIR"; #else // progname is a file name or a path??? const char * const progname = (char*)(PROGNAME); #endif fprintf(stderr,"progname=%s\n",progname); #endif // MSC_VER read_config_file(); // If the input file does not exist or was not specified. struct stat testbuf; Loading Loading @@ -599,6 +609,7 @@ void OpenGLCanvas::define_triangle_indices(unsigned int * indices, int m, int n) } #ifndef _MSC_VER int OpenGLCanvas::pnmGetTextureSize(const char * const progname, const char * texturePath) { struct pam inpam; Loading Loading @@ -657,6 +668,7 @@ void OpenGLCanvas::pnmReadTextureBytes(const char * const progname, pm_close(in_file); } #endif int OpenGLCanvas::jpgGetTextureSize(const char *texturePath) { Loading
openglcanvas.h +4 −0 Original line number Diff line number Diff line Loading @@ -35,11 +35,13 @@ #endif #include "chronos.h" #ifndef _MSC_VER extern "C" { #include <ppm.h> #include <pm.h> #include <pam.h> } #endif #include <jpeglib.h> Loading @@ -66,8 +68,10 @@ protected: void load_sphere_mesh(float *positions, int m, int n); float calculate_extent(float fov_rads); void define_triangle_indices(unsigned int * indices, int m, int n); #ifndef _MSC_VER int pnmGetTextureSize(const char *const progname, const char *texturePath); void pnmReadTextureBytes(const char *const progname, const char *texturePath,unsigned char *textureBytes,int *outImageWidth,int *outImageHeight); #endif int jpgGetTextureSize(const char *texturePath); void jpgReadTextureBytes(const char *texturePath,unsigned char *textureBytes,int *outImageWidth,int *outImageHeight); char *textFileRead(char *fn); Loading
pano_interface_1.pro +12 −11 Original line number Diff line number Diff line Loading @@ -45,17 +45,18 @@ LIBS += -lm -lglut -lGL -lGLEW -lnetpbm -ljpeg win32 { DEFINES += GLEW_STATIC INCLUDEPATH += "C:/Program Files (x86)/glew-1.9.0/include" DEPENDPATH += "C:/Program Files (x86)/glew-1.9.0/include" INCLUDEPATH += "C:/Program Files (x86)/freeglut/include" DEPENDPATH += "C:/Program Files (x86)/freeglut/include" INCLUDEPATH += "C:/Program Files (x86)/GnuWin32/include" DEPENDPATH += "C:/Program Files (x86)/GnuWin32/include" LIBS += -L"C:/Program Files (x86)/freeglut/lib" LIBS += -L"C:/Program Files (x86)/GnuWin32/lib" LIBS += -L"C:/Program Files (x86)/GnuWin32/bin" LIBS += -L"C:/Program Files (x86)/glew-1.9.0/lib" LIBS += -lglew32s -lfreeglut -lglu32 -lopengl32 -llibnetpbm10 PFROOT = "C:/Program Files" INCLUDEPATH += $${PFROOT}/glew-1.9.0/include DEPENDPATH += $${PFROOT}/glew-1.9.0/include INCLUDEPATH += $${PFROOT}/freeglut/include DEPENDPATH += $${PFROOT}/freeglut/include INCLUDEPATH += $${PFROOT}/GnuWin32/include DEPENDPATH += $${PFROOT}/GnuWin32/include LIBS += -L$${PFROOT}/freeglut/lib LIBS += -L$${PFROOT}/GnuWin32/lib LIBS += -L$${PFROOT}/GnuWin32/bin LIBS += -L$${PFROOT}/glew-1.9.0/lib LIBS += -lglew32s -lfreeglut -lglu32 -lopengl32 -ljpeg #-llibnetpbm10 } TARGET = pano_interface_1 Loading