vtf-logo

GridDataParams.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 #ifndef _included_GridDataParams_h
00004 #define _included_GridDataParams_h
00005 
00010 /* Face data directions for 1,2,3-D */
00011 #define ALL     (-2)
00012 #define CENTER  (-1)
00013 
00014 #define NULL_FACE       (-1)
00015 #define FACES   (0)
00016 #define WEST    (0)
00017 #define EAST    (1)
00018 #define SOUTH   (2)
00019 #define NORTH   (3)
00020 #define FRONT   (4)
00021 #define BACK    (5)
00022 #define INSIDE  (6)
00023 
00024 /* Corner data directions for 2,3-D */
00025 /* West = W, East = W, South = S, North = N
00026    Front = F, Back = B */ 
00027 #define NULL_CORNER     (-1)
00028 #define CORNERS (10)
00029 /* 3-D */
00030 #define WSF     (10)
00031 #define WSB     (11)
00032 #define WNF     (12)
00033 #define WNB     (13)
00034 #define ESF     (14)
00035 #define ESB     (15)
00036 #define ENF     (16)
00037 #define ENB     (17)
00038 /* 2-D */
00039 #define WS      (10)
00040 #define WN      (11)
00041 #define ES      (12)
00042 #define EN      (13)
00043 
00044 /* Edge data directions for 3-D */
00045 /* West = W, East = W, South = S, North = N
00046    Front = F, Back = B, Center C */ 
00047 #define NULL_EDGE       (-1)
00048 #define EDGES   (20)
00049 #define WSC     (20)
00050 #define WNC     (21)
00051 #define WCF     (22)
00052 #define WCB     (23)
00053 #define CSF     (24)
00054 #define CSB     (25)
00055 #define CNF     (26)
00056 #define CNB     (27)
00057 #define ENC     (28)
00058 #define ESC     (29)
00059 #define ECB     (30)
00060 #define ECF     (31)
00061 
00062 const int DirCorners2[6][3] = {
00063                              {WS,WN,NULL_CORNER},{ES,EN,NULL_CORNER}, // X-B,X-F
00064                              {WS,ES,NULL_CORNER},{WN,EN,NULL_CORNER}, // Y-B,Y-F
00065                              {WS,WN,ES},         {ES,EN,WN}           // All-B,All-F
00066                             };
00067 
00068 const int DirCorners3[8][7] = {
00069           {WSF,WSB,WNF,WNB,NULL_CORNER,NULL_CORNER,NULL_CORNER},
00070           {ESF,ESB,ENF,ENB,NULL_CORNER,NULL_CORNER,NULL_CORNER}, // X-B,X-F
00071           {WSF,WSB,ESF,ESB,NULL_CORNER,NULL_CORNER,NULL_CORNER},
00072           {WNF,WNB,ENF,ENB,NULL_CORNER,NULL_CORNER,NULL_CORNER}, // Y-B,Y-F
00073           {WSF,WNF,ESF,ENF,NULL_CORNER,NULL_CORNER,NULL_CORNER},
00074           {WSB,WNB,ESB,ENB,NULL_CORNER,NULL_CORNER,NULL_CORNER}, // Z-B,Z-F
00075           {WSF,WSB,WNF,WNB,ESF,ESB,ENF},
00076           {ESF,ESB,ENF,ENB,WNF,WNB,WSB}                          // All-B,All-F
00077                             };
00078 const int DirEdges3[8][9] = {
00079           {WSC,WNC,WCF,WCB,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE},
00080           {ENC,ESC,ECB,ECF,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, // X-B,X-F
00081           {WSC,CSF,CSB,ESC,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE},
00082           {WNC,CNF,CNB,ENC,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, // Y-B,Y-F
00083           {WCF,CSF,CNF,ECF,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE},
00084           {WCB,CSB,CNB,ECB,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, // Z-B,Z-F
00085           {WSC,WNC,WCF,WCB,CSF,CSB,ESC,CNF,ECF}, 
00086           {ENC,ESC,ECB,ECF,WNC,CNF,CNB,WCB,CSB}                                // All-B,All-F
00087                           };
00088 
00089 #endif

Generated on Fri Aug 24 13:00:29 2007 for AMROC's Hierachical Data Structures - by  doxygen 1.4.7