proj home

Files   Classes   Functions   Hierarchy  

d4marchdisp Class Reference

#include <d4marchdisp.h>

Collaboration diagram for d4marchdisp:

List of all members.

Public Member Functions

 d4marchdisp (double const _cvalue=0.0)
void eval (pt4c &P0, pt4c &P1, pt4c &P2, pt4c &P3) const

Public Attributes

bool winding
bool seenormal
double cvalue


Detailed Description

Definition at line 19 of file d4marchdisp.h.


Constructor & Destructor Documentation

d4marchdisp::d4marchdisp ( double const   _cvalue = 0.0  )  [inline]

Definition at line 51 of file d4marchdisp.h.

00052     : winding(false), seenormal(false), cvalue(_cvalue) {}


Member Function Documentation

void d4marchdisp::eval ( pt4c P0,
pt4c P1,
pt4c P2,
pt4c P3 
) const

Definition at line 15 of file d4marchdisp.cpp.

References cvalue.

00016 {
00017   unsigned int res(0);
00018   if (P0.a<cvalue)
00019     res += 1;
00020   if (P1.a<cvalue)
00021     res += 2;
00022   if (P2.a<cvalue)
00023     res += 4;
00024   if (P3.a<cvalue)
00025     res += 8;
00026 
00027   if (res==0)
00028     return;
00029 
00030   if (res==15)
00031     return;
00032 
00033   switch(res)
00034   {
00035     case 14:
00036     case 1:
00037       writeone(P0,P1,P2,P3);
00038       //writeone(x0,y0,z0,f0,x1,y1,z1,f1,x2,y2,z2,f2,x3,y3,z3,f3);
00039       break;
00040     case 2:
00041     case 13:
00042       writeone(P1,P0,P2,P3);
00043       //writeone(x1,y1,z1,f1,x0,y0,z0,f0,x2,y2,z2,f2,x3,y3,z3,f3);
00044       break;
00045     case 4:
00046     case 11:
00047       writeone(P2,P1,P0,P3);
00048       //writeone(x2,y2,z2,f2,x1,y1,z1,f1,x0,y0,z0,f0,x3,y3,z3,f3);
00049       break;
00050     case 8:
00051     case 7:
00052       writeone(P3,P1,P2,P0);
00053       //writeone(x3,y3,z3,f3,x1,y1,z1,f1,x2,y2,z2,f2,x0,y0,z0,f0);
00054       break;
00055 
00056     case 3:
00057     case 12:
00058       writetwo(P0,P1,P2,P3);
00059       //writetwo(x0,y0,z0,f0,x1,y1,z1,f1,x2,y2,z2,f2,x3,y3,z3,f3);
00060       break;
00061 
00062     case 5:
00063     case 10:
00064       writetwo(P0,P2,P1,P3);
00065       //writetwo(x0,y0,z0,f0,x2,y2,z2,f2,x1,y1,z1,f1,x3,y3,z3,f3);
00066       break;
00067 
00068     case 9:
00069     case 6:
00070       writetwo(P0,P3,P2,P1);
00071       //writetwo(x0,y0,z0,f0,x3,y3,z3,f3,x2,y2,z2,f2,x1,y1,z1,f1);
00072       break;
00073   }
00074 
00075 }


Member Data Documentation

Definition at line 48 of file d4marchdisp.h.

Referenced by eval().

Definition at line 46 of file d4marchdisp.h.

Definition at line 44 of file d4marchdisp.h.


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

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