proj home

Files   Classes   Functions   Hierarchy  

triangletest.cpp

Go to the documentation of this file.
00001 #include <cassert>
00002 #include <iostream>
00003 using namespace std; 
00004 
00005 #include <commandline.h>
00006 #include <gobj.h>
00007 #include <graphmisc.h>
00008 #include <triangle.h>
00009 #include <triangle3D.h>
00010 #include <triangledisplay.h>
00011 #include <triangletest.h>
00012 #include <zpr.h>
00013 
00014 
00015 
00016 
00017 void triangletest::keyboard01(unsigned char key, int x, int y)
00018 {
00019   switch (key)
00020   {
00021     case 27:
00022       exit(0);
00023       break;
00024   }
00025 }
00026 
00027 void triangletest::display01()
00028 { 
00029   glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
00030 
00031   assert(gobj::global!=0);
00032   gobj::global->draw();
00033 
00034   glerrordisplay();
00035   
00036   glutSwapBuffers();
00037 }
00038 
00039 void triangletest::test01(int argc, char** argv)
00040 {
00041   glutInit(&argc,argv);
00042   glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
00043   glutInitWindowSize(800,800);
00044   glutCreateWindow("");
00045   glutDisplayFunc(display01);
00046   glutKeyboardFunc(keyboard01);
00047 
00048   zpr zz;
00049 
00050   OpenGLinitialisation();
00051 
00052   glEnable(GL_DEPTH_TEST);
00053   glEnable(GL_CULL_FACE);
00054   glEnable(GL_NORMALIZE);
00055  
00056   commandline cmd(argc,argv);
00057 
00058   double a0=0.0;
00059   double a1=0.0;
00060   double b0=1.3;
00061   double b1=0.0;
00062   double c0=1.0;
00063   double c1=2.0;
00064 
00065   cmd.mapvar(a0,"a0");
00066   cmd.mapvar(a1,"a1");
00067   cmd.mapvar(b0,"b0");
00068   cmd.mapvar(b1,"b1");
00069   cmd.mapvar(c0,"c0");
00070   cmd.mapvar(c1,"c1");
00071 
00072   typedef point2<double> pt2;
00073 
00074   gX.set();
00075 
00076   triangle<pt2,double> tr( pt2(a0,a1), pt2(b0,b1), pt2(c0,c1) );
00077 
00078   triangledisplay< triangle<pt2,double> > td(gX,tr);
00079 
00080   bool off(false);
00081   cmd.mapvar(off,"off");
00082   if (off==false)
00083     td.turnon();
00084 
00085   cmd.mapvar(td.mesh,"mesh");
00086   cmd.mapvar(td.midpoints,"midpoints");
00087   cmd.mapvar(td.centroid,"centroid");
00088   cmd.mapvar(td.orthocenter,"orthocenter");
00089   cmd.mapvar(td.circumcenter,"circumcenter");
00090   cmd.mapvar(td.incenter,"incenter");
00091   cmd.mapvar(td.fermatpoint,"fermatpoint");
00092   cmd.mapvar(td.napoleanpoint,"napoleanpoint");
00093   cmd.mapvar(td.gergonnepoint,"gergonnepoint");
00094 
00095   td.draw();
00096 
00097   zz.update();
00098   glutMainLoop();
00099 }
00100 
00101 
00102 
00103 
00104 
00105 void triangletest::test02(int argc, char** argv)
00106 {
00107   glutInit(&argc,argv);
00108   glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
00109   glutInitWindowSize(800,800);
00110   glutCreateWindow("");
00111   glutDisplayFunc(display01);
00112   glutKeyboardFunc(keyboard01);
00113 
00114   zpr zz;
00115 
00116   OpenGLinitialisation();
00117 
00118   glEnable(GL_DEPTH_TEST);
00119   glEnable(GL_CULL_FACE);
00120   glEnable(GL_NORMALIZE);
00121  
00122   commandline cmd(argc,argv);
00123 
00124   double a0=0.0;
00125   double a1=0.0;
00126   double b0=1.3;
00127   double b1=0.0;
00128   double c0=1.0;
00129   double c1=2.0;
00130 
00131   cmd.mapvar(a0,"a0");
00132   cmd.mapvar(a1,"a1");
00133   cmd.mapvar(b0,"b0");
00134   cmd.mapvar(b1,"b1");
00135   cmd.mapvar(c0,"c0");
00136   cmd.mapvar(c1,"c1");
00137 
00138   typedef point2<double> pt2;
00139 
00140   gX.set();
00141 
00142   triangle<pt2,double> tr( pt2(a0,a1), pt2(b0,b1), pt2(c0,c1) );
00143 
00144   triangledisplaypoints< triangle<pt2,double> > td(gX,tr);
00145 
00146   bool off(false);
00147   cmd.mapvar(off,"off");
00148   if (off==false)
00149     td.turnon();
00150 
00151   cmd.mapvar(td.mesh,"mesh");
00152   cmd.mapvar(td.midpoints,"midpoints");
00153   cmd.mapvar(td.centroid,"centroid");
00154   cmd.mapvar(td.orthocenter,"orthocenter");
00155   cmd.mapvar(td.circumcenter,"circumcenter");
00156   cmd.mapvar(td.incenter,"incenter");
00157   cmd.mapvar(td.fermatpoint,"fermatpoint");
00158   cmd.mapvar(td.napoleanpoint,"napoleanpoint");
00159   cmd.mapvar(td.gergonnepoint,"gergonnepoint");
00160 
00161   td.draw();
00162 
00163   zz.update();
00164   glutMainLoop();
00165 }
00166 
00167 
00168 
00169 
00170 void triangletest::test03(int argc, char** argv)
00171 {
00172   glutInit(&argc,argv);
00173   glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
00174   glutInitWindowSize(800,600);
00175   glutCreateWindow("");
00176   glutDisplayFunc(display01);
00177   glutKeyboardFunc(keyboard01);
00178 
00179   zpr zz;
00180 
00181   OpenGLinitialisation();
00182 
00183   glEnable(GL_DEPTH_TEST);
00184   glEnable(GL_CULL_FACE);
00185   glEnable(GL_NORMALIZE);
00186  
00187   commandline cmd(argc,argv);
00188 
00189   double a0=0.0;
00190   double a1=0.0;
00191   double a2=0.0;
00192   double b0=1.3;
00193   double b1=0.0;
00194   double b2=0.0;
00195   double c0=0.5;
00196   double c1=0.0;
00197   double c2=1.0;
00198 
00199   cmd.mapvar(a0,"a0");
00200   cmd.mapvar(a1,"a1");
00201   cmd.mapvar(a2,"a2");
00202   cmd.mapvar(b0,"b0");
00203   cmd.mapvar(b1,"b1");
00204   cmd.mapvar(b2,"b2");
00205   cmd.mapvar(c0,"c0");
00206   cmd.mapvar(c1,"c1");
00207   cmd.mapvar(c2,"c2");
00208 
00209   typedef point3<double> pt3;
00210 
00211   gX.set();
00212 
00213   triangle3D<pt3,double> tr( pt3(a0,a1,a2), pt3(b0,b1,b2), 
00214     pt3(c0,c1,c2) );
00215 
00216   triangledisplay< triangle3D<pt3,double> > td(gX,tr);
00217 
00218   bool off(false);
00219   cmd.mapvar(off,"off");
00220   if (off==false)
00221     td.turnon();
00222 
00223   cmd.mapvar(td.mesh,"mesh");
00224   cmd.mapvar(td.midpoints,"midpoints");
00225   cmd.mapvar(td.centroid,"centroid");
00226   cmd.mapvar(td.orthocenter,"orthocenter");
00227   cmd.mapvar(td.circumcenter,"circumcenter");
00228   cmd.mapvar(td.incenter,"incenter");
00229   cmd.mapvar(td.fermatpoint,"fermatpoint");
00230   cmd.mapvar(td.napoleanpoint,"napoleanpoint");
00231   cmd.mapvar(td.gergonnepoint,"gergonnepoint");
00232 
00233   td.draw();
00234 
00235   zz.update();
00236   glutMainLoop();
00237 }
00238 
00239 
00240 

Generated on Fri Mar 4 00:49:30 2011 for Chelton Evans Source by  doxygen 1.5.8