i got a program from this link http://people.sc.fsu.edu/~burkardt/cpp_src/rotating_cube_display_open_gl/rot...
http://people.sc.fsu.edu/~burkardt/cpp_src/rotating_cube_display_open_gl/rot...
# include <cstdlib> # include <cmath> # include <iostream> # include <iomanip> # include <fstream>
# include <GL/glut.h>
using namespace std;
GLfloat vertices[][3] = { { -1.0, -1.0, -1.0 }, { 1.0, -1.0, -1.0 }, { 1.0, 1.0, -1.0 }, { -1.0, 1.0, -1.0 }, { -1.0, -1.0, 1.0 }, { 1.0, -1.0, 1.0 }, { 1.0, 1.0, 1.0 }, { -1.0, 1.0, 1.0 } };
GLfloat normals[][3] = { { -1.0, -1.0, -1.0 }, { 1.0, -1.0, -1.0 }, { 1.0, 1.0, -1.0 }, { -1.0, 1.0, -1.0 }, { -1.0, -1.0, 1.0 }, { 1.0, -1.0, 1.0 }, { 1.0, 1.0, 1.0 }, { -1.0, 1.0, 1.0 } };
GLfloat colors[][3] = { { 0.0, 0.0, 0.0 }, { 1.0, 0.0, 0.0 }, { 1.0, 1.0, 0.0 }, { 0.0, 1.0, 0.0 }, { 0.0, 0.0, 1.0 }, { 1.0, 0.0, 1.0 }, { 1.0, 1.0, 1.0 }, { 0.0, 1.0, 1.0 } };
static GLint axis = 2; static GLfloat theta[3] = { 0.0, 0.0, 0.0 };
int main ( int argc, char *argv[] ); void colorcube ( ); void display ( ); void mouse ( int btn, int state, int x, int y ); void myReshape ( int w, int h ); void polygon ( int a, int b, int c, int d ); void spinCube ( );
int main ( int argc, char *argv[] ) { glutInit ( &argc, argv ); glutInitDisplayMode ( GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH ); glutInitWindowSize ( 500, 500 ); glutInitWindowPosition ( 0, 0 ); glutCreateWindow ( "Rotating cube" ); glutReshapeFunc ( myReshape ); glutDisplayFunc ( display ); glutIdleFunc ( spinCube ); glutMouseFunc ( mouse ); glEnable ( GL_DEPTH_TEST ); glutMainLoop ( );
return 0; } void colorcube ( )
{ polygon ( 0, 3, 2, 1 ); polygon ( 2, 3, 7, 6 ); polygon ( 0, 4, 7, 3 ); polygon ( 1, 2, 6, 5 ); polygon ( 4, 5, 6, 7 ); polygon ( 0, 1, 5, 4 );
return; }
void display ( )
glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glLoadIdentity ( );
glRotatef ( theta[0], 1.0, 0.0, 0.0 ); glRotatef ( theta[1], 0.0, 1.0, 0.0 ); glRotatef ( theta[2], 0.0, 0.0, 1.0 );
colorcube ( ); glFlush ( ); glutSwapBuffers ( );
return; }
void mouse ( int btn, int state, int x, int y ) { if ( btn == GLUT_LEFT_BUTTON && state == GLUT_DOWN ) { axis = axis + 1; } if ( btn == GLUT_MIDDLE_BUTTON && state == GLUT_DOWN ) { axis = axis + 1; } if ( btn == GLUT_RIGHT_BUTTON && state == GLUT_DOWN ) { axis = axis + 1; } axis = axis % 3;
return; }
void myReshape ( int w, int h ) { glViewport ( 0, 0, w, h ); glMatrixMode ( GL_PROJECTION ); glLoadIdentity ( );
if ( w <= h ) { glOrtho ( -2.0, 2.0, -2.0 * ( GLfloat ) h / ( GLfloat ) w, 2.0 * ( GLfloat ) h / ( GLfloat ) w, -10.0, 10.0 ); } else { glOrtho ( -2.0 * ( GLfloat ) h / ( GLfloat ) w, 2.0 * ( GLfloat ) h / ( GLfloat ) w, -2.0, 2.0, -10.0, 10.0 ); }
glMatrixMode ( GL_MODELVIEW );
return; }
void polygon ( int a, int b, int c, int d )
{ glBegin ( GL_POLYGON );
glColor3fv ( colors[a] ); glNormal3fv ( normals[a] ); glVertex3fv ( vertices[a] );
glColor3fv ( colors[b] ); glNormal3fv ( normals[b] ); glVertex3fv ( vertices[b] );
glColor3fv ( colors[c] ); glNormal3fv ( normals[c] ); glVertex3fv ( vertices[c] );
glColor3fv ( colors[d] ); glNormal3fv ( normals[d] ); glVertex3fv ( vertices[d] );
glEnd ( );
return; }
void spinCube ( )
{ theta[axis] = theta[axis] + 0.020; if ( 360.0 < theta[axis] ) { theta[axis] = theta[axis] - 360.0; } glutPostRedisplay ( );
return; }
-------------------------------
I compiled using command rvcemcabrp@rvcemcabrp-laptop:~/Desktop/opengl$ g++ rotating_cube_display_open_gl.C -lm -lGL -lGLU -lglut
then i tried this
./a.out X Error of failed request: BadRequest (invalid request code or no such operation) Major opcode of failed request: 143 (GLX) Minor opcode of failed request: 19 (X_GLXQueryServerString) Serial number of failed request: 12 Current serial number in output stream: 12 rvcemcabrp@rvcemcabrp-laptop:~/Desktop/opengl$
i want solution for any of the following problems
------------------ this is for one of the labs for BE ( computer science students -- VI semester ) SYSTEM SOFTWARE Implement the following programs in C / C++
1. Program to recursively subdivide a tetrahedron to from 3D Sierpinski gasket. The number of recursive steps is to be specified by the user. 2. Program to implement Liang-Barsky line clipping algorithm.
3. Program to draw a color cube and spin it using OpenGL transformation matrices.
4. Program to create a house like figure and rotate it about a given fixed point using OpenGL functions.
5. Program to implement the Cohen-Sutherland line-clipping algorithm. Make provision to specify the input line, window for clipping and view port for displaying the clipped image.
6. Program to create a cylinder and a parallelepiped by extruding a circle and
quadrilateral respectively. Allow the user to specify the circle and the quadrilateral.
7 Program, using OpenGL functions, to draw a simple shaded scene consisting of a tea pot on a table. Define suitably the position and properties of the light source along with the properties of the properties of the surfaces of the solid object used in the scene.
1. Program to draw a color cube and allow the user to move the camera suitably to experiment with perspective viewing. Use OpenGL functions. 2. Program to fill any given polygon using scan-line area filling algorithm. (Use appropriate data structures.) 3. Program to display a set of values { fij } as a rectangular mesh.
Part B
Develop a suitable Graphics package to implement the skills learnt in the theory and the exercises indicated in Part A. Use the OpenGL.
2009/3/26 renuka prasad renukaprasadb@gmail.com
i got a program from this link
http://people.sc.fsu.edu/~burkardt/cpp_src/rotating_cube_display_open_gl/rot...http://people.sc.fsu.edu/%7Eburkardt/cpp_src/rotating_cube_display_open_gl/rotating_cube_display_open_gl.html
http://people.sc.fsu.edu/~burkardt/cpp_src/rotating_cube_display_open_gl/rot...http://people.sc.fsu.edu/%7Eburkardt/cpp_src/rotating_cube_display_open_gl/rotating_cube_display_open_gl.html
the program i have pasted below -- might be missing some lines as i removed few lines ( comments ) while pasting here , the actual program is at the bottom of the page ( link provided above )
# include <cstdlib> # include <cmath> # include <iostream> # include <iomanip> # include <fstream>
# include <GL/glut.h>
using namespace std;
GLfloat vertices[][3] = { { -1.0, -1.0, -1.0 }, { 1.0, -1.0, -1.0 }, { 1.0, 1.0, -1.0 }, { -1.0, 1.0, -1.0 }, { -1.0, -1.0, 1.0 }, { 1.0, -1.0, 1.0 }, { 1.0, 1.0, 1.0 }, { -1.0, 1.0, 1.0 } };
GLfloat normals[][3] = { { -1.0, -1.0, -1.0 }, { 1.0, -1.0, -1.0 }, { 1.0, 1.0, -1.0 }, { -1.0, 1.0, -1.0 }, { -1.0, -1.0, 1.0 }, { 1.0, -1.0, 1.0 }, { 1.0, 1.0, 1.0 }, { -1.0, 1.0, 1.0 } };
GLfloat colors[][3] = { { 0.0, 0.0, 0.0 }, { 1.0, 0.0, 0.0 }, { 1.0, 1.0, 0.0 }, { 0.0, 1.0, 0.0 }, { 0.0, 0.0, 1.0 }, { 1.0, 0.0, 1.0 }, { 1.0, 1.0, 1.0 }, { 0.0, 1.0, 1.0 } };
static GLint axis = 2; static GLfloat theta[3] = { 0.0, 0.0, 0.0 };
int main ( int argc, char *argv[] ); void colorcube ( ); void display ( ); void mouse ( int btn, int state, int x, int y ); void myReshape ( int w, int h ); void polygon ( int a, int b, int c, int d ); void spinCube ( );
int main ( int argc, char *argv[] ) { glutInit ( &argc, argv ); glutInitDisplayMode ( GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH ); glutInitWindowSize ( 500, 500 ); glutInitWindowPosition ( 0, 0 ); glutCreateWindow ( "Rotating cube" ); glutReshapeFunc ( myReshape ); glutDisplayFunc ( display ); glutIdleFunc ( spinCube ); glutMouseFunc ( mouse ); glEnable ( GL_DEPTH_TEST ); glutMainLoop ( );
return 0; } void colorcube ( )
{ polygon ( 0, 3, 2, 1 ); polygon ( 2, 3, 7, 6 ); polygon ( 0, 4, 7, 3 ); polygon ( 1, 2, 6, 5 ); polygon ( 4, 5, 6, 7 ); polygon ( 0, 1, 5, 4 );
return; }
void display ( )
glClear ( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glLoadIdentity ( );
glRotatef ( theta[0], 1.0, 0.0, 0.0 ); glRotatef ( theta[1], 0.0, 1.0, 0.0 ); glRotatef ( theta[2], 0.0, 0.0, 1.0 );
colorcube ( ); glFlush ( ); glutSwapBuffers ( );
return; }
void mouse ( int btn, int state, int x, int y ) { if ( btn == GLUT_LEFT_BUTTON && state == GLUT_DOWN ) { axis = axis + 1; } if ( btn == GLUT_MIDDLE_BUTTON && state == GLUT_DOWN ) { axis = axis + 1; } if ( btn == GLUT_RIGHT_BUTTON && state == GLUT_DOWN ) { axis = axis + 1; } axis = axis % 3;
return; }
void myReshape ( int w, int h ) { glViewport ( 0, 0, w, h ); glMatrixMode ( GL_PROJECTION ); glLoadIdentity ( );
if ( w <= h ) { glOrtho ( -2.0, 2.0, -2.0 * ( GLfloat ) h / ( GLfloat ) w, 2.0 * ( GLfloat ) h / ( GLfloat ) w, -10.0, 10.0 ); } else { glOrtho ( -2.0 * ( GLfloat ) h / ( GLfloat ) w, 2.0 * ( GLfloat ) h / ( GLfloat ) w, -2.0, 2.0, -10.0, 10.0 ); }
glMatrixMode ( GL_MODELVIEW );
return; }
void polygon ( int a, int b, int c, int d )
{ glBegin ( GL_POLYGON );
glColor3fv ( colors[a] ); glNormal3fv ( normals[a] ); glVertex3fv ( vertices[a] );
glColor3fv ( colors[b] ); glNormal3fv ( normals[b] ); glVertex3fv ( vertices[b] );
glColor3fv ( colors[c] ); glNormal3fv ( normals[c] ); glVertex3fv ( vertices[c] );
glColor3fv ( colors[d] ); glNormal3fv ( normals[d] ); glVertex3fv ( vertices[d] );
glEnd ( );
return; }
void spinCube ( )
{ theta[axis] = theta[axis] + 0.020; if ( 360.0 < theta[axis] ) { theta[axis] = theta[axis] - 360.0; } glutPostRedisplay ( );
return; }
I compiled using command rvcemcabrp@rvcemcabrp-laptop:~/Desktop/opengl$ g++ rotating_cube_display_open_gl.C -lm -lGL -lGLU -lglut
then i tried this
./a.out X Error of failed request: BadRequest (invalid request code or no such operation) Major opcode of failed request: 143 (GLX) Minor opcode of failed request: 19 (X_GLXQueryServerString) Serial number of failed request: 12 Current serial number in output stream: 12 rvcemcabrp@rvcemcabrp-laptop:~/Desktop/opengl$
i want solution for any of the following problems
------------------ this is for one of the labs for BE ( computer science students -- VI semester ) Implement the following programs in C / C++
- Program to recursively subdivide a tetrahedron to from 3D Sierpinski
gasket. The number of recursive steps is to be specified by the user. 2. Program to implement Liang-Barsky line clipping algorithm.
Program to draw a color cube and spin it using OpenGL transformation
matrices.
- Program to create a house like figure and rotate it about a given
fixed point using OpenGL functions.
- Program to implement the Cohen-Sutherland line-clipping algorithm.
Make provision to specify the input line, window for clipping and view port for displaying the clipped image.
- Program to create a cylinder and a parallelepiped by extruding a
circle and
quadrilateral respectively. Allow the user to specify the circle and
the quadrilateral.
7 Program, using OpenGL functions, to draw a simple shaded scene consisting of a tea pot on a table. Define suitably the position and properties of the light source along with the properties of the properties of the surfaces of the solid object used in the scene.
- Program to draw a color cube and allow the user to move the camera
suitably to experiment with perspective viewing. Use OpenGL functions. 2. Program to fill any given polygon using scan-line area filling algorithm. (Use appropriate data structures.) 3. Program to display a set of values { fij } as a rectangular mesh.
Part B
Develop a suitable Graphics package to implement the skills learnt in the theory and the exercises indicated in Part A. Use the OpenGL.
renuka prasad renukaprasadb@gmail.com wrote:
./a.out X Error of failed request: BadRequest (invalid request code or no such operation) Major opcode of failed request: 143 (GLX) Minor opcode of failed request: 19 (X_GLXQueryServerString) Serial number of failed request: 12 Current serial number in output stream: 12
I think you need to load glx module. Check /etc/X11/xorg.conf, there should be a load glx line in module section.
http://en.wikipedia.org/wiki/GLX
Everything else you've asked for are too much work for me. ;-)