VMTK
|
An instance of vtkImplicitFunction which evaluates the minimum sphere function from a collection of points with attached sphere radii as point data. More...
#include <vtkvmtkPolyBall.h>
Public Types | |
typedef vtkImplicitFunction | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkvmtkPolyBall * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) VTK_OVERRIDE |
void | EvaluateGradient (double x[3], double n[3]) VTK_OVERRIDE |
double | EvaluateFunction (double x[3]) VTK_OVERRIDE |
double | EvaluateFunction (double x, double y, double z) VTK_OVERRIDE |
virtual void | SetInput (vtkPolyData *) |
virtual vtkPolyData * | GetInput () |
void | SetInputData (vtkPolyData *input) |
vtkPolyData * | GetInputData () |
virtual void | SetPolyBallRadiusArrayName (const char *) |
virtual char * | GetPolyBallRadiusArrayName () |
virtual vtkIdType | GetLastPolyBallCenterId () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkvmtkPolyBall * | SafeDownCast (vtkObjectBase *o) |
static vtkvmtkPolyBall * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkvmtkPolyBall () | |
~vtkvmtkPolyBall () | |
Protected Attributes | |
vtkPolyData * | Input |
char * | PolyBallRadiusArrayName |
vtkIdType | LastPolyBallCenterId |
An instance of vtkImplicitFunction which evaluates the minimum sphere function from a collection of points with attached sphere radii as point data.
Implicit functions are real valued functions defined in 3D space, w = F(x,y,z). Two primitive operations are required: the ability to evaluate the function, and the function gradient at a given point. The implicit function divides space into three regions: on the surface (F(x,y,z)=w), outside of the surface (F(x,y,z)>c), and inside the surface (F(x,y,z)<c). (When c is zero, positive values are outside, negative values are inside, and zero is on the surface. Note also that the function gradient points from inside to outside.)
A polyball is just an implicit function which takes a data set containing a bunch of points in R^3 with sphere radii defined on top of them and evaluates the minimum sphere function across the entire collection for a particular point. The sphere function is zero at the sphere surface, negative inside the sphere, and positive outside the sphere. This is implemented as a brute force calculation; in order to find the minimum sphere function across the collection, the sphere function is evaluated at the query point for every point in the input data set.
Definition at line 38 of file vtkvmtkPolyBall.h.
typedef vtkImplicitFunction vtkvmtkPolyBall::Superclass |
Definition at line 41 of file vtkvmtkPolyBall.h.
|
protected |
|
protected |
|
static |
|
virtual |
|
static |
|
protectedvirtual |
vtkvmtkPolyBall* vtkvmtkPolyBall::NewInstance | ( | ) | const |
void vtkvmtkPolyBall::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
|
static |
double vtkvmtkPolyBall::EvaluateFunction | ( | double | x[3] | ) |
Evaluate polyball.
|
inline |
Evaluate polyball.
Definition at line 49 of file vtkvmtkPolyBall.h.
void vtkvmtkPolyBall::EvaluateGradient | ( | double | x[3], |
double | n[3] | ||
) |
Evaluate polyball gradient.
|
virtual |
Set / get input poly data.
|
virtual |
Set / get input poly data.
|
inline |
Set / get input poly data.
Definition at line 60 of file vtkvmtkPolyBall.h.
|
inline |
Set / get input poly data.
Definition at line 61 of file vtkvmtkPolyBall.h.
|
virtual |
Set / get poly ball radius array name.
|
virtual |
Set / get poly ball radius array name.
|
virtual |
Get the id of the last nearest poly ball center.
|
protected |
Definition at line 79 of file vtkvmtkPolyBall.h.
|
protected |
Definition at line 80 of file vtkvmtkPolyBall.h.
|
protected |
Definition at line 81 of file vtkvmtkPolyBall.h.