class vxtGrid3D : public vxtBase

3D grid, definition of space dependent parameters and interface

Inheritance:


Public

Friends and methods for grid creation
friend vxtGrid3D* createGrid(int nx, int ny, int nz, float size, int voxType, colorType ctype, sProfile profType, float w=-1)
Create a grid with specific parameters
virtual vxtGrid3D* Dup(void) const
Duplicate the object
virtual ~vxtGrid3D()
Virtual destructor
Acces to grid dimensions and other sizes
virtual int getNX(void) const
X resolution in pixels
virtual int getNY(void) const
Y resolution in pixels
virtual int getNZ(void) const
Z resolution in pixels
Data access nethods
virtual int getShift(int x, int y, int z) const
get shift of a voxel with respect to grid origin
virtual int rowSize() const
size of a full row of voxels, including padding layer
virtual int sliceSize() const
size of a full slice of voxels, including padding layer
virtual int gridSize(void) const
Size of the grid in units (floats, ints, etc.), including padding
virtual void setColorDist(int x, int y, int z, double dist, const RGBColor &c, const csgOp op)
Write distance and color: Apply CSG operation at a voxel
virtual void setColorDist(int sh, double dist, const RGBColor &c, const csgOp op)
Write distance and color: Apply CSG operation at a voxel
virtual void setDist(int x, int y, int z, double val)
write distance to the grid
virtual void setDist(int sh, double val)
write distance to the grid
write distance to the grid
virtual RGBColor getColor(int x, int y, int z) const
read from grid
virtual RGBColor getColor(int sh) const
read from grid
virtual double getDist(int sh) const
read distance from grid
virtual double getDist(int x, int y, int z) const
read distance from grid
Density and splat methods
virtual float solidDensity(float d) const
density corresponding to the distance from 3D solids
virtual float patchDensity(float d) const
density corresponding to the distance from 1D or 2D object
virtual float getSplatStep(void) const
get distance between patches
virtual float getVRad(void) const
get distance between patches
virtual void patchSplatGrid(const Vector3D& s, const csgOp op, const RGBColor &c=RGBColor(1))
Splat a patch with position s into the grid (s in grid coordinates)
virtual void patchSplatWorld(const Vector3D& s, const csgOp op, const RGBColor &c=RGBColor(1))
Splat a patch with position s into the grid (s in world coordinates)
Other methods
virtual bool isEmpty(void) const
read the empty/nonempty status of the grid
virtual void setNonEmpty(void)
set the empty flag to false
virtual Vector3D getMinBBox(void) const
get minimal vertex of the bounding box of nonzero voxels
virtual Vector3D getMaxBBox(void) const
get maximal vertex of the bounding box of nonzero voxels
virtual colorType getColorType() const
get type of the grid (MONO, COLOR)
virtual void save(const char *name) const
save the grid
virtual void view(char *name="im.pgm")
render and save a preview
virtual void init(float d)
initialize the whole grid by a particular value, set monoGrid color to (1,1,1) and colorGrid to (0,0,0)
virtual void Merge(vxtGrid3D const* gr, const csgOp op)
merge (AND, OR, SUB) a grid with another grid
virtual vxtGrid3D* croppedVolume(void) const
get new, cropped volume
virtual void saveSurfDistVolume(char *name) const
compute a surface distance volume corresponding to the density
virtual vxtGrid3D* openCloseVolumeOct(void) const
get a new volume, data modified to fit the open/close condition
virtual vxtGrid3D* openCloseVolumeDist(void) const
get a new volume, data modified to fit the open/close condition
virtual vxtGrid3D* openCloseVolume(void) const
get a new volume, data modified to fit the open/close condition
virtual void setGridCenter(Vector3D pos)
Transform center point if the grid
Transformations between GCS and WCS
virtual Vector3D grid2world(Vector3D g) const
transform a point in GCS to WCS
virtual Vector3D world2grid(Vector3D w) const
Transform point in WSC to GCS

Inherited from vxtBase:


Documentation

3D grid, definition of space dependent parameters and interface. A 3D grid, surrounded by blSize thick layer of voxels. Methods for manipulation with grid dimensions and transformations. Definition of data manipulation methods in the form of pute virtual functions.
Friends and methods for grid creation

friend vxtGrid3D* createGrid(int nx, int ny, int nz, float size, int voxType, colorType ctype, sProfile profType, float w=-1)
Create a grid with specific parameters
Parameters:
nx - resolution in X direction
ny - resolution in Y direction
nz - resolution in Z direction
size - Size of the grid in meters along the lardest dimension
voxType - Type of the distance grid. Possible values: f3dUChar, f3dUInt16, f3dFloat.
cType - Possible values VXT_MONO and VXT_COLOR
profType - Type of the surface profile. Possible values: VXT_LIN and VXT_GAUSS. This value is saved in the header of the f3d file to be later used by the visualization program for correct setting of yhe interpolation and gradient filters.
w - Width of the surface profile. This parameter is optional. If not used, the following optimal values are used:
  • 1.8, if profType is VXT_LIN, and
  • 1.0, if profType is VXT_GAUSS

virtual vxtGrid3D* Dup(void) const
Duplicate the object

virtual ~vxtGrid3D()
Virtual destructor

Acces to grid dimensions and other sizes

virtual int getNX(void) const
X resolution in pixels

virtual int getNY(void) const
Y resolution in pixels

virtual int getNZ(void) const
Z resolution in pixels

Data access nethods

virtual int getShift(int x, int y, int z) const
get shift of a voxel with respect to grid origin

virtual int rowSize() const
size of a full row of voxels, including padding layer

virtual int sliceSize() const
size of a full slice of voxels, including padding layer

virtual int gridSize(void) const
Size of the grid in units (floats, ints, etc.), including padding

virtual void setColorDist(int x, int y, int z, double dist, const RGBColor &c, const csgOp op)
Write distance and color: Apply CSG operation at a voxel

virtual void setColorDist(int sh, double dist, const RGBColor &c, const csgOp op)
Write distance and color: Apply CSG operation at a voxel

virtual void setDist(int x, int y, int z, double val)
write distance to the grid

virtual void setDist(int sh, double val)
write distance to the grid

write distance to the grid

virtual RGBColor getColor(int x, int y, int z) const
read from grid

virtual RGBColor getColor(int sh) const
read from grid

virtual double getDist(int sh) const
read distance from grid

virtual double getDist(int x, int y, int z) const
read distance from grid

Density and splat methods

virtual float solidDensity(float d) const
density corresponding to the distance from 3D solids

virtual float patchDensity(float d) const
density corresponding to the distance from 1D or 2D object

virtual float getSplatStep(void) const
get distance between patches

virtual float getVRad(void) const
get distance between patches

virtual void patchSplatGrid(const Vector3D& s, const csgOp op, const RGBColor &c=RGBColor(1))
Splat a patch with position s into the grid (s in grid coordinates)

virtual void patchSplatWorld(const Vector3D& s, const csgOp op, const RGBColor &c=RGBColor(1))
Splat a patch with position s into the grid (s in world coordinates)

Other methods

virtual bool isEmpty(void) const
read the empty/nonempty status of the grid

virtual void setNonEmpty(void)
set the empty flag to false

virtual Vector3D getMinBBox(void) const
get minimal vertex of the bounding box of nonzero voxels

virtual Vector3D getMaxBBox(void) const
get maximal vertex of the bounding box of nonzero voxels

virtual colorType getColorType() const
get type of the grid (MONO, COLOR)

virtual void save(const char *name) const
save the grid

virtual void view(char *name="im.pgm")
render and save a preview

virtual void init(float d)
initialize the whole grid by a particular value, set monoGrid color to (1,1,1) and colorGrid to (0,0,0)

virtual void Merge(vxtGrid3D const* gr, const csgOp op)
merge (AND, OR, SUB) a grid with another grid

virtual vxtGrid3D* croppedVolume(void) const
get new, cropped volume

virtual void saveSurfDistVolume(char *name) const
compute a surface distance volume corresponding to the density

virtual vxtGrid3D* openCloseVolumeOct(void) const
get a new volume, data modified to fit the open/close condition

virtual vxtGrid3D* openCloseVolumeDist(void) const
get a new volume, data modified to fit the open/close condition

virtual vxtGrid3D* openCloseVolume(void) const
get a new volume, data modified to fit the open/close condition

virtual void setGridCenter(Vector3D pos)
Transform center point if the grid. By default, it is set to the grid centroid. Should be explicitly set, for example, in the "croppedVolume" method to ensure identical position of the original and cropped volumes

Transformations between GCS and WCS

virtual Vector3D grid2world(Vector3D g) const
transform a point in GCS to WCS

virtual Vector3D world2grid(Vector3D w) const
Transform point in WSC to GCS


This class has no child classes.
Author:
Milos Sramek, SUNY Stony Brook, Center for Visual Computing
Version:
1.0

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de