|
virtual vtkTypeBool | IsA (const char *type) |
| Return 1 if this class is the same type of (or a subclass of) the named class. More...
|
|
vtkEllipsoidalGaussianKernel * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) override |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
void | Initialize (vtkAbstractPointLocator *loc, vtkDataSet *ds, vtkPointData *pd) override |
| Initialize the kernel. More...
|
|
vtkIdType | ComputeWeights (double x[3], vtkIdList *pIds, vtkDoubleArray *prob, vtkDoubleArray *weights) override |
| Given a point x, a list of basis points pIds, and a probability weighting function prob, compute interpolation weights associated with these basis points. More...
|
|
virtual void | SetUseNormals (bool) |
| Specify whether vector values should be used to affect the shape of the Gaussian distribution. More...
|
|
virtual bool | GetUseNormals () |
|
virtual void | UseNormalsOn () |
|
virtual void | UseNormalsOff () |
|
virtual void | SetNormalsArrayName (vtkStdString) |
| Specify the normals array name. More...
|
|
virtual vtkStdString | GetNormalsArrayName () |
|
virtual void | SetUseScalars (bool) |
| Specify whether scalar values should be used to scale the weights. More...
|
|
virtual bool | GetUseScalars () |
|
virtual void | UseScalarsOn () |
|
virtual void | UseScalarsOff () |
|
virtual void | SetScalarsArrayName (vtkStdString) |
| Specify the scalars array name. More...
|
|
virtual vtkStdString | GetScalarsArrayName () |
|
virtual void | SetScaleFactor (double) |
| Multiply the Gaussian splat distribution by this value. More...
|
|
virtual double | GetScaleFactor () |
|
virtual void | SetSharpness (double) |
| Set / Get the sharpness (i.e., falloff) of the Gaussian. More...
|
|
virtual double | GetSharpness () |
|
virtual void | SetEccentricity (double) |
| Set / Get the eccentricity of the ellipsoidal Gaussian. More...
|
|
virtual double | GetEccentricity () |
|
virtual vtkIdType | ComputeWeights (double x[3], vtkIdList *pIds, vtkDoubleArray *prob, vtkDoubleArray *weights)=0 |
| Given a point x, a list of basis points pIds, and a probability weighting function prob, compute interpolation weights associated with these basis points. More...
|
|
vtkIdType | ComputeWeights (double x[3], vtkIdList *pIds, vtkDoubleArray *weights) override |
| Given a point x, and a list of basis points pIds, compute interpolation weights associated with these basis points. More...
|
|
vtkGeneralizedKernel * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) override |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
vtkIdType | ComputeBasis (double x[3], vtkIdList *pIds, vtkIdType ptId=0) override |
| Based on the kernel style, invoke the appropriate locator method to obtain the points making up the basis. More...
|
|
vtkIdType | ComputeWeights (double x[3], vtkIdList *pIds, vtkDoubleArray *weights) override |
| Given a point x, and a list of basis points pIds, compute interpolation weights associated with these basis points. More...
|
|
virtual void | SetKernelFootprint (int) |
| Specify the interpolation basis style. More...
|
|
virtual int | GetKernelFootprint () |
|
void | SetKernelFootprintToRadius () |
|
void | SetKernelFootprintToNClosest () |
|
virtual void | SetRadius (double) |
| If the interpolation basis style is Radius, then this method specifies the radius within which the basis points must lie. More...
|
|
virtual double | GetRadius () |
|
virtual void | SetNumberOfPoints (int) |
| If the interpolation basis style is NClosest, then this method specifies the number of the closest points used to form the interpolation basis. More...
|
|
virtual int | GetNumberOfPoints () |
|
virtual void | SetNormalizeWeights (bool) |
| Indicate whether the interpolation weights should be normalized after they are computed. More...
|
|
virtual bool | GetNormalizeWeights () |
|
virtual void | NormalizeWeightsOn () |
|
virtual void | NormalizeWeightsOff () |
|
| vtkAbstractTypeMacro (vtkInterpolationKernel, vtkObject) |
| Standard method for type and printing. More...
|
|
void | PrintSelf (ostream &os, vtkIndent indent) override |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
virtual void | SetRequiresInitialization (bool) |
| Indicate whether the kernel needs initialization. More...
|
|
virtual bool | GetRequiresInitialization () |
|
virtual void | RequiresInitializationOn () |
|
virtual void | RequiresInitializationOff () |
|
| vtkBaseTypeMacro (vtkObject, vtkObjectBase) |
|
virtual void | DebugOn () |
| Turn debugging output on. More...
|
|
virtual void | DebugOff () |
| Turn debugging output off. More...
|
|
bool | GetDebug () |
| Get the value of the debug flag. More...
|
|
void | SetDebug (bool debugFlag) |
| Set the value of the debug flag. More...
|
|
virtual void | Modified () |
| Update the modification time for this object. More...
|
|
virtual vtkMTimeType | GetMTime () |
| Return this object's modified time. More...
|
|
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
|
|
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
|
vtkCommand * | GetCommand (unsigned long tag) |
|
void | RemoveObserver (vtkCommand *) |
|
void | RemoveObservers (unsigned long event, vtkCommand *) |
|
void | RemoveObservers (const char *event, vtkCommand *) |
|
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
|
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
|
void | RemoveObserver (unsigned long tag) |
|
void | RemoveObservers (unsigned long event) |
|
void | RemoveObservers (const char *event) |
|
void | RemoveAllObservers () |
|
vtkTypeBool | HasObserver (unsigned long event) |
|
vtkTypeBool | HasObserver (const char *event) |
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
|
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| Allow user to set the AbortFlagOn() with the return value of the callback method. More...
|
|
int | InvokeEvent (unsigned long event, void *callData) |
| This method invokes an event and return whether the event was aborted or not. More...
|
|
int | InvokeEvent (const char *event, void *callData) |
|
int | InvokeEvent (unsigned long event) |
|
int | InvokeEvent (const char *event) |
|
const char * | GetClassName () const |
| Return the class name as a string. More...
|
|
virtual void | Delete () |
| Delete a VTK object. More...
|
|
virtual void | FastDelete () |
| Delete a reference to this object. More...
|
|
void | InitializeObjectBase () |
|
void | Print (ostream &os) |
| Print an object to an ostream. More...
|
|
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
|
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
|
virtual void | Register (vtkObjectBase *o) |
| Increase the reference count (mark as used by another object). More...
|
|
virtual void | UnRegister (vtkObjectBase *o) |
| Decrease the reference count (release by another object). More...
|
|
int | GetReferenceCount () |
| Return the current reference count of this object. More...
|
|
void | SetReferenceCount (int) |
| Sets the reference count. More...
|
|
void | PrintRevisions (ostream &) |
| Legacy. More...
|
|
an ellipsoidal Gaussian interpolation kernel
vtkEllipsoidalGaussianKernel is an interpolation kernel that returns the weights for all points found in the ellipsoid defined by radius R in combination with local data (normals and/or scalars). For example, "pancake" weightings (the local normal parallel to the minimum ellisoidal axis); or "needle" weightings (the local normal parallel to the maximum ellipsoidal axis) are possible. (Note that spherical Gaussian weightings are more efficiently computed using vtkGaussianKernel.)
The ellipsoidal Gaussian can be described by:
W(x) = S * exp( -( Sharpness^2 * ((rxy/E)**2 + z**2)/R**2) )
where S is the local scalar value; E is a user-defined eccentricity factor that controls the elliptical shape of the splat; z is the distance of the current voxel sample point along the local normal N; and rxy is the distance to neigbor point x in the direction prependicular to N.
- Warning
- The weights are normalized so that SUM(Wi) = 1. If a neighbor point p precisely lies on the point to be interpolated, then the interpolated point takes on the values associated with p.
- See also
- vtkPointInterpolator vtkInterpolationKernel vtkGeneralizedKernel vtkGaussianKernel vtkVoronoiKernel vtkSPHKernel vtkShepardKernel
- Tests:
- vtkEllipsoidalGaussianKernel (Tests)
Definition at line 62 of file vtkEllipsoidalGaussianKernel.h.