Classes |
class | AABox |
class | AncestorGrid |
| Class template is used as abstract ancestor of voxel grids. More...
|
struct | ISectTri |
struct | TriAccel |
struct | BBox |
class | BoundingINode |
class | BoundingLNode |
| Leaf node of a bounding box tree. References triangle. More...
|
class | BoundingNode |
| Abstract BOUNDINGNODE node. More...
|
class | HE |
class | BoundingTree |
struct | Stack |
struct | BSPNode |
struct | BSPLeaf |
struct | BSPInner |
union | FastBSPNode |
class | BSPTree |
class | Cell |
| Class template for a cell in a hierarchical grid. More...
|
class | DefaultCell |
class | GradientFilter |
| This class is a filter that computes gradients from a grid. More...
|
class | _HGridCellFunctor |
class | _AssignFun |
class | _HGridCellFunctorConst |
class | HGrid |
| Hierarchical voxel grid. More...
|
class | IndexedFaceSet |
| This class represents the simplest possible triangle mesh data structure. More...
|
class | KDTree |
| A classic K-D tree. More...
|
struct | Material |
class | TriMeshObjLoader |
class | OBox |
class | ImplicitFunction |
| Implicit function. More...
|
struct | POINT |
struct | TRIANGLE |
class | Polygonizer |
| Polygonizer is the class used to perform polygonization. More...
|
class | QEM |
struct | Ray |
class | RGrid |
| Regular voxel grid. More...
|
class | VolSaver |
class | VolSaverAscii |
class | VolSaverFloat |
class | EdgeMap |
class | ParSurf |
class | ThreeDDDA |
| A ThreeDDDA is a class for traversing a grid of cells. More...
|
class | Triangle |
class | TrilinFilter |
class | TriMesh |
| A Triangle Mesh struct. More...
|
Typedefs |
typedef POINT | VERTEX |
typedef POINT | NORMAL |
Enumerations |
enum | ToTetraHedralize { TET = 0,
NOTET = 1
} |
Functions |
void | create_tri_accel (Vec3f A, Vec3f B, Vec3f C, TriAccel &tri_accel) |
bool | intersect2 (Ray &ray, const TriAccel &acc, double t_max) |
void | IntersectAlltrianglesInLeaf (const BSPLeaf *leaf, Ray &ray, double t_max) |
template<class T , class F > |
void | _for_each_voxel (T *data, int x_dim, int xy_dim, const CGLA::Vec3i &p0, const CGLA::Vec3i &p7, F &functor, const CGLA::Vec3i &offset=CGLA::Vec3i(0)) |
template<class T , class F > |
void | _for_each_voxel (T *data, const CGLA::Vec3i &dims, F &functor, const CGLA::Vec3i &offset=CGLA::Vec3i(0)) |
template<class T , class F > |
void | for_each_voxel (RGrid< T > &grid, const CGLA::Vec3i &p0, const CGLA::Vec3i &p7, F &functor) |
template<class T , class F > |
void | for_each_voxel (RGrid< T > &grid, F &functor) |
template<class T , class F > |
void | for_each_voxel_ordered (RGrid< T > &grid, const CGLA::Vec3i &p0, const CGLA::Vec3i &p7, F &functor) |
template<class T , class F > |
void | for_each_voxel_ordered (RGrid< T > &grid, F &functor) |
template<class T , class CellT , class F > |
void | for_each_cell (HGrid< T, CellT > &grid, const CGLA::Vec3i &p0, const CGLA::Vec3i &p7, F &functor) |
template<class T , class CellT , class F > |
void | for_each_cell (HGrid< T, CellT > &grid, F &functor) |
template<class T , class CellT , class F > |
void | for_each_voxel (HGrid< T, CellT > &grid, const CGLA::Vec3i &_p0, const CGLA::Vec3i &_p7, F &functor) |
template<class T , class CellT , class F > |
void | for_each_voxel (HGrid< T, CellT > &grid, F &functor) |
template<class T , class CellT , class F > |
void | for_each_voxel_ordered (HGrid< T, CellT > &grid, const CGLA::Vec3i &_p0, const CGLA::Vec3i &_p7, F &functor) |
template<class T , class CellT , class F > |
void | for_each_voxel_ordered (HGrid< T, CellT > &grid, F &functor) |
template<class G > |
void | clear_region (G &grid, const typename G::DataType &value) |
template<class G > |
void | clear_region (G &grid, const CGLA::Vec3i &p0, const CGLA::Vec3i &p7, const typename G::DataType &value) |
template<class T , class F > |
void | for_each_voxel_const (const RGrid< T > &grid, const CGLA::Vec3i &p0, const CGLA::Vec3i &p7, F &functor) |
template<class T , class F > |
void | for_each_voxel_const (const RGrid< T > &grid, F &functor) |
template<class T , class F > |
void | for_each_voxel_ordered_const (const RGrid< T > &grid, const CGLA::Vec3i &p0, const CGLA::Vec3i &p7, F &functor) |
template<class T , class F > |
void | for_each_voxel_ordered_const (const RGrid< T > &grid, F &functor) |
template<class T , class CellT , class F > |
void | for_each_cell_const (const HGrid< T, CellT > &grid, const CGLA::Vec3i &p0, const CGLA::Vec3i &p7, F &functor) |
template<class T , class CellT , class F > |
void | for_each_cell_const (const HGrid< T, CellT > &grid, F &functor) |
template<class T , class CellT , class F > |
void | for_each_voxel_const (const HGrid< T, CellT > &grid, const CGLA::Vec3i &_p0, const CGLA::Vec3i &_p7, F &functor) |
template<class T , class CellT , class F > |
void | for_each_voxel_const (const HGrid< T, CellT > &grid, F &functor) |
template<class T , class CellT , class F > |
void | for_each_voxel_ordered_const (const HGrid< T, CellT > &grid, const CGLA::Vec3i &_p0, const CGLA::Vec3i &_p7, F &functor) |
template<class T , class CellT , class F > |
void | for_each_voxel_ordered_const (const HGrid< T, CellT > &grid, F &functor) |
const CGLA::Vec3i | NULL_FACE (-1,-1,-1) |
void | load (const std::string &filename, TriMesh &mesh) |
| Load a TriMesh from a file. Loader chosen based on extension.
|
template<class T > |
bool | load_raw (const string &file, RGrid< T > &grid) |
template bool | load_raw (const string &, RGrid< unsigned char > &grid) |
template bool | load_raw (const string &, RGrid< unsigned short > &grid) |
template bool | load_raw (const string &, RGrid< short > &grid) |
template bool | load_raw (const string &, RGrid< float > &grid) |
void | obj_load (const std::string &filename, TriMesh &mesh) |
| Load a TriMesh from an OBJ file.
|
void | ply_load (const std::string &fn, Geometry::TriMesh &_mesh) |
template<class G > |
void | save_raw_float (const std::string &name, G &grid) |
template<class G > |
void | save_raw_byte (const std::string &name, G &grid, const typename G::DataType &min_val, const typename G::DataType &max_val) |
template<class G > |
void | save_raw_ascii (const std::string &name, G &grid, const typename G::DataType &min_val, const typename G::DataType &max_val) |
void | tessellate (IndexedFaceSet &face_set, ParSurf &s, Grid2D< Vec3f > &inigrid) |
void | tessellate (IndexedFaceSet &face_set, ParSurf &s, float u_min, float u_max, float v_min, float v_max, int n, int m) |
void | tessellate (IndexedFaceSet &face_set, ParSurf &s, std::vector< Vec2f > uv_points, std::vector< Vec3i > triangles) |
void | tessellate (IndexedFaceSet &face_set, ParSurf &s, std::vector< CGLA::Vec2f > uv_points, std::vector< CGLA::Vec3i > triangles) |
float | SqrDistance (const Vec3f &rkPoint, const Triangle &rkTri) |
Variables |
const float | DIST_THRESH = 5.0e-4f |
const int | MAX_DEPTH = 25 |
const Vec3f | N6f [6] |
const Vec3i | N6i [6] |
const Vec3d | N6d [6] |
const Vec3f | N26f [26] |
const Vec3i | N26i [26] |
const Vec3d | N26d [26] |
const Vec3i | CubeCorners8i [8] |
const Vec3f | CubeCorners8f [8] |
const double | d_eps = 1.0e-12 |
const float | f_eps = 1.0e-6f |
float | MAX_ERR = 5 |
float | MAX_DIST = 5 |
int | ADAPTIVE = false |
const float | EPSILON = 1e-10f |
A namespace for utilities related to geometry.
This namespace contains a wide range of stuff: Spatial datastructures voxel grids and related classes as well as a simple triangle mesh class.