Compute part of Vol(cube, mmt) that doesn't depend on r1, g1, or b1 (depending on dir)
| 198 | // Compute part of Vol(cube, mmt) that doesn't depend on r1, g1, or b1 |
| 199 | // (depending on dir) |
| 200 | ILint Bottom(Box *cube, ILubyte dir, ILint mmt[33][33][33]) |
| 201 | { |
| 202 | switch(dir) |
| 203 | { |
| 204 | case RED: |
| 205 | return( -mmt[cube->r0][cube->g1][cube->b1] |
| 206 | +mmt[cube->r0][cube->g1][cube->b0] |
| 207 | +mmt[cube->r0][cube->g0][cube->b1] |
| 208 | -mmt[cube->r0][cube->g0][cube->b0] ); |
| 209 | break; |
| 210 | case GREEN: |
| 211 | return( -mmt[cube->r1][cube->g0][cube->b1] |
| 212 | +mmt[cube->r1][cube->g0][cube->b0] |
| 213 | +mmt[cube->r0][cube->g0][cube->b1] |
| 214 | -mmt[cube->r0][cube->g0][cube->b0] ); |
| 215 | break; |
| 216 | case BLUE: |
| 217 | return( -mmt[cube->r1][cube->g1][cube->b0] |
| 218 | +mmt[cube->r1][cube->g0][cube->b0] |
| 219 | +mmt[cube->r0][cube->g1][cube->b0] |
| 220 | -mmt[cube->r0][cube->g0][cube->b0] ); |
| 221 | break; |
| 222 | } |
| 223 | return 0; |
| 224 | } |
| 225 | |
| 226 | |
| 227 | // Compute remainder of Vol(cube, mmt), substituting pos for |