#include <DistanceTransform3D.h>
Inheritance diagram for DistanceTransform3D:

Public Member Functions | |
| DistanceTransform3D (const int xSize, const int ySize, const int zSize, const double xSpace=1.0, const double ySpace=1.0, const double zSpace=1.0, const double halfXSpace=0.0, const double halfYSpace=0.0, const double halfZSpace=0.0, const bool unload=true) | |
| virtual void | doTransform (const unsigned char *const I)=0 |
| calculate the distance transform | |
| double | getD (const int x, const int y, const int z) const |
| return the distance value assigned to a particular position | |
| void | saveResult (const char *const fname) const |
| save the result | |
| virtual bool | getP (const int x, const int y, const int z, int &px, int &py, int &pz) const |
| return the "parent" (border point) associated with this point | |
Protected Member Functions | |
| int | sub (const int x, const int y, const int z) const |
| virtual void | borderCheck (const unsigned char *const I) |
| void | cleanUp () |
| void | finish (const unsigned char *const I, double *d) |
| void | finish (const unsigned char *const I, int *d, const int dx, const int dy, const int dz) |
Protected Attributes | |
| int | xSize |
| integer size (width) in pixels | |
| int | ySize |
| integer size (height) in pixels | |
| int | zSize |
| integer size (depth/slices) in pixels | |
| double | mXSpace |
| physical size in x direction | |
| double | mYSpace |
| physical size in y direction | |
| double | mZSpace |
| physical size in z direction | |
| double | mHalfXSpace |
| half physical size in x direction | |
| double | mHalfYSpace |
| half physical size in y direction | |
| double | mHalfZSpace |
| half physical size in z direction | |
| double * | dD |
| result of distance transform (as doubles) | |
| int * | iD |
| the calculated distance transform (as ints) | |
Private Attributes | |
| int * | rowOffsets |
| used to speed up 3d array indexing | |
| int * | sliceOffsets |
| used to spped up 3d array indexing | |
| bool | unloadFlag |
| convert ints to doubles (if necessary) | |
Classes | |
| class | P |
| DistanceTransform::P class. Simply a 2D point. More... | |
|
||||||||||||||||||||||||||||||||||||||||||||
|
if 'unload' is true, transforms that use ratios of integers should convert their integer results to the actual double values (of the ratios). |
|
||||||||||||||||||||||||
|
called to finish up after distance transform employing ints |
|
||||||||||||
|
called to finish up after distance transform employing doubles |
|
||||||||||||||||||||||||||||
|
return the "parent" (border point) associated with this point
Reimplemented in Simple3D, and SimpleList3D. |
|
||||||||||||||||
|
given a point (x,y,z) in an image, this method returns the corresponding 1d subscript into the 1d image array |
1.4.6