a 2D level set
![]() | LevelSets2D (Scene2D *scene, unsigned int xdim, unsigned int ydim, Contour2D &contour, double vx = 1.0, double vy = 1.0, unsigned int narrowBandWidth = 0) 2D level set constructor |
![]() | ~LevelSets2D () destroy level set and associated isocontour |
![]() | getInrimage (void) const returns buffer image |
![]() | setFirstNarrowBandWidth (const double _size) set the size of the first narrow band |
![]() | setSecondNarrowBandWidth (const double _size) set the size of the second narrow band |
![]() | redraw (Camera2D *cam) redraw method |
![]() | updateCenter (Vec2 Returns the graphic object center and weight |
![]() | updateRadius (const Vec2 returns the graphic object radius given its center |
![]() | computeClosestDistance (MouseClick& mc) const returns closest distance from mouse click |
![]() | iterate (const unsigned int n) routine that performs some deformation iterations on a deformable model |
![]() | getInterface (void) const returns object interface |
![]() | image the main image where the level sets are defined |
![]() | curvature the curvature image |
![]() | isolevel associated isocontour for visualization |
![]() | dt the time step used during each iteration based on an explicit scheme |
![]() | firstNarrowBandWidth the size in terms of distance of the first narrow band where the level set should always belong |
![]() | secondNarrowBandWidth the size in terms of distance of the second narrow band where all voxels are updated |
![]() | firstNarrowBand the first narrow band that contains the level set corresponding to the isovalue 0 |
![]() | secondNarrowBand the second narrow band where all voxels are updated |
![]() | balloon balloon force coefficient |
![]() | modified does the 0 level set need to be recomputed for display |
![]() | drawNarrowBand whether to draw narrow band |
![]() | narrowBandModified whether narrow band chaged since last redraw |
a 2D level set
unsigned int col
double& value
VoxelComputation(unsigned int r, unsigned int c, double &v)
c - voxel column (X coordinate)
v - voxel value unsigned int getRow() const
unsigned int getColumn() const
double getValue() const
Inrimage* curvature
IsoLevel2D* isolevel
double dt
double firstNarrowBandWidth
double secondNarrowBandWidth
std::list <VoxelComputation *> firstNarrowBand
std::list <VoxelComputation *> secondNarrowBand
double balloon
bool modified
bool drawNarrowBand
bool narrowBandModified
LevelSets2D(Scene2D *scene, unsigned int xdim, unsigned int ydim, Contour2D &contour, double vx = 1.0, double vy = 1.0, unsigned int narrowBandWidth = 0)
xdim - level set buffer X dimension
xdim - level set buffer Y dimension
ratio - image voxel/level set sampling ratio
vx - X sampling frequency (X voxel size)
vy - Y sampling frequency (Y voxel size)
narrowBandWidth - narrow band width (0 = no narrow band) virtual ~LevelSets2D()
const Inrimage& getInrimage(void) const
void setFirstNarrowBandWidth(const double _size)
void setSecondNarrowBandWidth(const double _size)
virtual void redraw(Camera2D *cam)
virtual void updateCenter(Vec2
n - returned weight virtual double updateRadius(const Vec2
virtual double computeClosestDistance(MouseClick& mc) const
virtual void iterate(const unsigned int n)
TclLevelSets2D* getInterface(void) const
void initBufferFromContour(Contour2D &contour)
void buildNarrowBand()
void resetNarrowBand()
void setTag(const char *tag)
static double getCurvatureTimesNorm(double ***src, unsigned int x, unsigned int y, unsigned int z)
x - voxel X coordinate
y - voxel Y coordinate
z - voxel Z coordinate static double getCurvatureAndNorm(double ***src, unsigned int x, unsigned int y, unsigned int z, double &norm)
x - voxel X coordinate
y - voxel Y coordinate
z - voxel Z coordinate
norm - returned norm value static double getExternal(double ***src, unsigned int x, unsigned int y, unsigned int z, double v)
x - voxel X coordinate
y - voxel Y coordinate
z - voxel Z coordinate
v - normal component value
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