Files Classes Functions Hierarchy
00001 #include <cassert> 00002 #include <iostream> 00003 using namespace std; 00004 00005 #include <GL/glut.h> 00006 #include <GL/gl.h> 00007 00008 #include <commandline.h> 00009 #include <gobjdebug01test.h> 00010 #include <gobjtest.h> 00011 #include <graphmisctest.h> 00012 #include <graphicsImmediateDeferredTest.h> 00013 #include <menusystemtest.h> 00014 #include <OpenGLtemplatedtest.h> 00015 #include <pointsurfacetest.h> 00016 #include <test05.h> 00017 #include <test07.h> 00018 #include <triangles3Tdisplaytest.h> 00019 #include <windowscaleD2test.h> 00020 00021 00022 00023 template <typename T> 00024 class guilaunch 00025 { 00026 public: 00027 00028 T x; 00029 guilaunch(int argc, char**argv) 00030 : x(argc,argv,GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH,800,600,"") 00031 { 00032 x.eval(); 00033 glutMainLoop(); 00034 } 00035 }; 00036 00037 00038 00039 int main(int argc, char**argv) 00040 { 00041 commandline cmd(argc,argv); 00042 uint prog(0); 00043 cmd.mapvar(prog,"prog"); 00044 00045 switch (prog) 00046 { 00047 case 0: 00048 cout << "Test programs for graphmisc workspace" << endl << endl; 00049 00050 cout << "$./main prog=5 - strings and points in 3D space displayed with text" << endl; 00051 //cout << "$./main prog=6 - switchContainer and some OpenGL" << endl; 00052 cout << "$./main prog=7 - compile display list from gobjContainer. The user" << endl; 00053 cout << " can enter the number of rings 'r' at the command line" << endl; 00054 cout << " and the torus geometry is recompiled and redisplayed." << endl; 00055 cout << "$./main prog=8 - Menu System Development and basic tests" << endl; 00056 00057 cout << "$./main prog=10 n=4 - triangles3Tdisplay test with triangles as indexed points, vary n." << endl; 00058 cout << "$./main prog=11 n=60 - triangles3TdisplayN test with triangles as indexed points and normals, vary n." << endl; 00059 cout << "$./main prog=12 - Normals and Color per vertex." << endl; 00060 cout << "$./main prog=13 - Normals and Color per triangle." << endl; 00061 cout << "$./main prog=14 - Color per triangle." << endl; 00062 00063 cout << "$./main prog=25 - Displaying a 2D oval using 2D input." << endl; 00064 cout << "$./main prog=26 - Displaying the surface of a sphere using 3D input." << endl; 00065 cout << "$./main prog=27 - Displaying a parallelogram with points." << endl; 00066 cout << "$./main prog=41" << gobjtest::doc[1] << endl; 00067 cout << "$./main prog=42" << gobjtest::doc[2] << endl; 00068 cout << "$./main prog=43" << gobjtest::doc[3] << endl; 00069 00070 00071 00072 00073 cout << "$./main prog=61 " << graphicsImmediateDeferredTest::doc[1] << endl; 00074 cout << "$./main prog=62 " << graphicsImmediateDeferredTest::doc[2] << endl; 00075 cout << "$./main prog=63 " << graphicsImmediateDeferredTest::doc[3] << endl; 00076 cout << "$./main prog=64 " << graphicsImmediateDeferredTest::doc[4] << endl; 00077 cout << "$./main prog=65 " << graphicsImmediateDeferredTest::doc[5] << endl; 00078 cout << "$./main prog=66 " << graphicsImmediateDeferredTest::doc[6] << endl; 00079 cout << "$./main prog=67 " << graphicsImmediateDeferredTest::doc[7] << endl; 00080 00081 cout << "$./main prog=70 " << gobjdebug01test::doc[1] << endl; 00082 cout << "$./main prog=71 " << gobjdebug01test::doc[2] << endl; 00083 cout << "$./main prog=72 " << gobjdebug01test::doc[3] << endl; 00084 00085 cout << "$./main prog=81 " << windowscaleD2test::doc[1] << endl; 00086 cout << "$./main prog=82 " << windowscaleD2test::doc[2] << endl; 00087 00088 break; 00089 00090 case 5: guilaunch<test05>(argc,argv); break; 00091 case 7: guilaunch<test07>(argc,argv); break; 00092 case 8: menusystemtest().test01(argc,argv); break; 00093 case 9: menusystemtest().test02(argc,argv); break; 00094 case 10: triangles3Tdisplaytest().test01(argc,argv); break; 00095 case 11: triangles3Tdisplaytest().test02(argc,argv); break; 00096 case 12: triangles3Tdisplaytest().test03(argc,argv); break; 00097 case 13: triangles3Tdisplaytest().test04(argc,argv); break; 00098 case 14: triangles3Tdisplaytest().test05(argc,argv); break; 00099 00100 case 20: OpenGLtemplatedtest().test01(argc,argv); break; 00101 00102 case 25: return pointsurfacetest().test01(argc,argv); 00103 case 26: return pointsurfacetest().test02(argc,argv); 00104 case 27: return pointsurfacetest().test03(argc,argv); 00105 00106 case 41: gobjtest().test001(argc,argv); break; 00107 case 42: gobjtest().test002(argc,argv); break; 00108 case 43: gobjtest().test003(argc,argv); break; 00109 00110 case 55: graphmisctest::test001(); break; 00111 case 56: graphmisctest().test002(argc,argv); break; 00112 00113 case 61: graphicsImmediateDeferredTest().test01(argc,argv); break; 00114 case 62: graphicsImmediateDeferredTest().test02(argc,argv); break; 00115 case 63: graphicsImmediateDeferredTest().test03(argc,argv); break; 00116 case 64: graphicsImmediateDeferredTest().test04(argc,argv); break; 00117 case 65: graphicsImmediateDeferredTest().test05(argc,argv); break; 00118 case 66: graphicsImmediateDeferredTest().test06(argc,argv); break; 00119 case 67: graphicsImmediateDeferredTest().test07(argc,argv); break; 00120 00121 case 70: gobjdebug01test().test01(); break; 00122 case 71: gobjdebug01test().test02(); break; 00123 case 72: gobjdebug01test().test03(); break; 00124 00125 case 81: return windowscaleD2test::test001(argc,argv); 00126 case 82: windowscaleD2test().test002(argc,argv); break; 00127 00128 default: cout << "error: No case handled." << endl; return 1; 00129 } 00130 00131 00132 00133 return 0; 00134 } 00135 00136
1.5.8