| home | project pages | download | documentation | doxygen | contact |
Classes | |
| class | CSGCylinder |
| class | CSGDifference |
| class | CSGIntersection |
| class | CSGInvert |
| class | CSGObject |
| class | CSGOperation |
| class | CSGPlane |
| class | CSGPrimative |
| class | CSGSphere |
| class | CSGUnion |
| class | bad_index |
| struct | free_region_s |
| A region of free items. More... | |
| class | FreeList |
| This class manages free items. More... | |
| class | TInterval |
| class | TMatrix |
| An affine transformation matrix. More... | |
| class | TVector |
| A homogenious vector and point class. More... | |
| class | VoxCoord |
| VoxCoord is an object that describes the position in oct-tree voxel space. More... | |
| class | Voxel |
| class | VoxOperation |
| struct | vox_node_t |
| class | VoxTree |
| An VoxTree instance holds a complete oct-tree of voxels. More... | |
Typedefs | |
| typedef struct free_region_s | free_region_t |
| typedef TInterval< double > | Interval |
| typedef TMatrix< double > | Matrix |
| typedef TVector< double > | Vector |
| typedef TVector< Interval > | IntervalVector |
Enumerations | |
| enum | vox_op_t { VOX_OP_OR = 0, VOX_OP_AND, VOX_OP_XOR, VOX_OP_TST, VOX_OP_NOP } |
| Voxel operations. More... | |
Functions | |
| template<class T> | |
| static T | gmin (T a, T b) |
| static double | gmin (double a, double b) |
| template<class T> | |
| static T | gmax (T a, T b) |
| static double | gmax (double a, double b) |
| template<class T> | |
| static T | gabs (T a) |
| static double | gabd (double a) |
| static double | gcos (double a) |
| static double | gsin (double a) |
| static double | gsquare (double a) |
| static double | gsqrt (double a) |
| static Interval | gsquare (Interval a) |
| template<class T, int H, int W> | |
| bool | gauss_jordan (T m[H][W]) |
| Gauss-Jordan elimination. | |
Variables | |
| CSGObject * | WHITE_BOX = new CSGObject() |
| CSGObject * | BLACK_BOX = new CSGObject() |
| camvox::bad_index | bad_index |
| typedef struct free_region_s camvox::free_region_t |
| typedef TInterval<double> camvox::Interval |
| typedef TVector<Interval> camvox::IntervalVector |
| typedef TMatrix<double> camvox::Matrix |
| typedef TVector<double> camvox::Vector |
| enum camvox::vox_op_t |
Voxel operations.
These are the operations that can be made on the voxel volume.
| static double camvox::gabd | ( | double | a | ) | [inline, static] |
| static T camvox::gabs | ( | T | a | ) | [inline, static] |
| bool camvox::gauss_jordan | ( | T | m[H][W] | ) | [inline] |
Gauss-Jordan elimination.
Basically converts the the augmented matrix, until the first half is an identity matrix.
This is useful to invert a matrix by augmenting it with a identity matrix, after this function the right side of the augmented matrix contains the inverted original matrix.
| m[H][W] | The augmented matrix. It will return the augmented matrix with the leftside being the identity matrix. |
| static double camvox::gcos | ( | double | a | ) | [inline, static] |
| static double camvox::gmax | ( | double | a, | |
| double | b | |||
| ) | [inline, static] |
| static T camvox::gmax | ( | T | a, | |
| T | b | |||
| ) | [inline, static] |
| static double camvox::gmin | ( | double | a, | |
| double | b | |||
| ) | [inline, static] |
| static T camvox::gmin | ( | T | a, | |
| T | b | |||
| ) | [inline, static] |
| static double camvox::gsin | ( | double | a | ) | [inline, static] |
| static double camvox::gsqrt | ( | double | a | ) | [inline, static] |
| static Interval camvox::gsquare | ( | Interval | a | ) | [inline, static] |
| static double camvox::gsquare | ( | double | a | ) | [inline, static] |
| CSGObject * camvox::BLACK_BOX = new CSGObject() |
| CSGObject * camvox::WHITE_BOX = new CSGObject() |