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() |