proj home

Files   Classes   Functions   Hierarchy  

virtualtetrahedron Class Reference

#include <virtualtetrahedron.h>

Collaboration diagram for virtualtetrahedron:

List of all members.

Public Member Functions

 virtualtetrahedron ()
void set (uintc a, uintc b, uintc c, uintc d)
void set (uintc base)
void clockwise ()
void anticlockwise ()
void left ()
void right ()
void down ()
bool const validstate () const

Public Attributes

uint v [4]


Detailed Description

Definition at line 10 of file virtualtetrahedron.h.


Constructor & Destructor Documentation

virtualtetrahedron::virtualtetrahedron (  ) 

Definition at line 6 of file virtualtetrahedron.cpp.

References v.

00007 {
00008   v[0]=0;
00009   v[1]=1;
00010   v[2]=2;
00011   v[3]=3;
00012 }


Member Function Documentation

void virtualtetrahedron::anticlockwise (  ) 

Definition at line 35 of file virtualtetrahedron.cpp.

References v.

Referenced by keyboard(), d4tess::surfacedown(), and d4tess::surfaceright().

00036 {
00037   uint k = v[0];
00038   v[0] = v[1];
00039   v[1] = v[2];
00040   v[2] = k;
00041 }

void virtualtetrahedron::clockwise (  ) 

Definition at line 43 of file virtualtetrahedron.cpp.

References v.

Referenced by keyboard(), and d4tess::surfaceleft().

00044 {
00045   uint k = v[2];
00046   v[2] = v[1];
00047   v[1] = v[0];
00048   v[0] = k;
00049 }

void virtualtetrahedron::down (  ) 

Definition at line 77 of file virtualtetrahedron.cpp.

References v.

Referenced by keyboard().

00078 {
00079   uint a = v[1];
00080   uint b = v[0];
00081   uint c = v[3];
00082   uint d = v[2];
00083 
00084   v[0] = a;
00085   v[1] = b;
00086   v[2] = c;
00087   v[3] = d;
00088 }

void virtualtetrahedron::left (  ) 

Definition at line 51 of file virtualtetrahedron.cpp.

References v.

Referenced by d4tess::boundaryorient(), keyboard(), and d4tess::searchinsidemesh().

00052 {
00053   uint a = v[0];
00054   uint b = v[2];
00055   uint c = v[3];
00056   uint d = v[1];
00057 
00058   v[0] = a;
00059   v[1] = b;
00060   v[2] = c;
00061   v[3] = d;
00062 }

void virtualtetrahedron::right (  ) 

Definition at line 64 of file virtualtetrahedron.cpp.

References v.

Referenced by d4tess::boundaryorient(), keyboard(), d4tess::searchinsidemesh(), and d4tess::surfacedown().

00065 {
00066   uint a = v[2];
00067   uint b = v[1];
00068   uint c = v[3];
00069   uint d = v[0];
00070 
00071   v[0] = a;
00072   v[1] = b;
00073   v[2] = c;
00074   v[3] = d;
00075 }

void virtualtetrahedron::set ( uintc  base  ) 

Definition at line 92 of file virtualtetrahedron.cpp.

References v.

00093 {
00094   switch (base)
00095   {
00096     case 0:
00097       v[0] = 2;
00098       v[1] = 1;
00099       v[2] = 3;
00100       break;
00101 
00102     case 1:
00103       v[0] = 2;
00104       v[1] = 3;
00105       v[2] = 0;
00106       break;
00107 
00108     case 2:
00109       v[0] = 1;
00110       v[1] = 0;
00111       v[2] = 3;
00112       break;
00113 
00114     case 3:
00115       v[0] = 1;
00116       v[1] = 2;
00117       v[2] = 0;
00118       break;
00119 
00120     default:
00121       assert(false);
00122       return;
00123   }
00124 
00125   v[3] = base;
00126 }

void virtualtetrahedron::set ( uintc  a,
uintc  b,
uintc  c,
uintc  d 
) [inline]

Definition at line 22 of file virtualtetrahedron.h.

References v.

Referenced by d4fan::eval(), d4tess::tetmovedown(), d4tess::tetmoveleft(), and d4tess::tetmoveright().

00023     { v[0]=a; v[1]=b; v[2]=c; v[3]=d; }

bool const virtualtetrahedron::validstate (  )  const

Definition at line 14 of file virtualtetrahedron.cpp.

References v.

Referenced by d4tess::cpsimplexface().

00015 {
00016   uint k;
00017   uint i;
00018   bool valid;
00019   for (k=0; k<4; ++k)
00020   {
00021     valid=false;
00022     for (i=0; (i<4)&&(valid==false); ++i)
00023     {
00024       if (v[i]==k)
00025         valid=true;
00026     }
00027      
00028     if (valid==false)
00029       return false;
00030   }
00031   
00032   return true; 
00033 }


Member Data Documentation


The documentation for this class was generated from the following files:

Generated on Fri Mar 4 00:50:23 2011 for Chelton Evans Source by  doxygen 1.5.8