|
| RegularGrid (const Vec3 &_origin=Vec3(0, 0, 0), const Vec3 &_x_axis=Vec3(1, 0, 0), const Vec3 &_y_axis=Vec3(0, 1, 0), const Vec3 &_z_axis=Vec3(0, 0, 1), unsigned int _x_res=1, unsigned int _y_res=1, unsigned int _z_res=1) |
|
void | initialize (const Vec3 &_origin, const Vec3 &_x_axis, const Vec3 &_y_axis, const Vec3 &_z_axis, unsigned int _x_res, unsigned int _y_res, unsigned int _z_res) |
| function to initialize the grid
|
|
unsigned int | n_cubes () const |
| Return number of cubes.
|
|
unsigned int | n_points () const |
| Return number of points.
|
|
PointIdx | point_idx (CubeIdx _idx, unsigned char _corner) const |
| Return the PointIdx of the _corners'th corner of the cube _idx.
|
|
Vec3 | point (PointIdx _idx) const |
| Return the 3D point refered to by _idx.
|
|
Vec3 | point (int x, int y, int z) const |
| Return the 3D point refered to by x,y,z.
|
|
PointIdx | nearest_point (const Vec3 &_p) |
| Return the nearest grid point.
|
|
const Vec3 & | origin () const |
|
const Vec3 & | x_axis () const |
|
const Vec3 & | y_axis () const |
|
const Vec3 & | z_axis () const |
|
const Vec3 & | dx () const |
|
const Vec3 & | dy () const |
|
const Vec3 & | dz () const |
|
unsigned int | x_resolution () const |
|
unsigned int | y_resolution () const |
|
unsigned int | z_resolution () const |
|
Vec3 | to_local (const Vec3 &_pw) |
| transforms a point to local cube coordinates
|
|
Vec3 | to_world (const Vec3 &_pl) |
| transforms a point for local cube coordinates to world coordinates
|
|
bool | ray_intersect_local (const Vec3 &_o, const Vec3 &_d, Vec3 &_entry, Vec3 &_exit) |
| function to intersect a Ray with the cube ( local coordinates )
|
|
real | volume () |
| returns the volume of the grid
|
|
virtual real | outer_surface () |
| returns the outer surface of the grid
|
|
| Grid () |
| Default constructor.
|
|
virtual | ~Grid () |
| Destructor.
|
|
CubeIterator | begin () const |
| Returns begin iterator for the grid's cubes.
|
|
CubeIterator | end () const |
| Returns end iterator for the grid's cubes.
|
|
virtual PointIdx | point_idx (CubeIdx _idx, unsigned char _corner) const =0 |
| Return the PointIdx of the _corners'th corner of the cube _idx.
|
|
virtual Vec3 | point (PointIdx _idx) const =0 |
| Return the 3D point refered to by _idx.
|
|
virtual bool | is_inside (PointIdx _pidx) const =0 |
| See IsoEx::Implicit::is_inside()
|
|
virtual real | scalar_distance (PointIdx _pidx) const =0 |
| See IsoEx::Implicit::scalar_distance()
|
|
virtual bool | directed_distance (const Vec3 &_p0, const Vec3 &_p1, Vec3 &_point, Vec3 &_normal, real &_distance) const =0 |
| See IsoEx::Implicit::directed_distance()
|
|
template<class Vec3>
class IsoEx::RegularGrid< Vec3 >
This class implements a regular 3D grid.