VTK
|
measure distance from k-means cluster centers More...
#include <vtkKMeansDistanceFunctor.h>
Public Types | |
typedef vtkObject | Superclass |
Public Types inherited from vtkObject | |
typedef vtkObjectBase | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkKMeansDistanceFunctor * | NewInstance () const |
virtual void | PrintSelf (ostream &os, vtkIndent indent) |
virtual vtkVariantArray * | GetEmptyTuple (vtkIdType dimension) |
virtual void | operator() (double &, vtkVariantArray *, vtkVariantArray *) |
virtual void | PairwiseUpdate (vtkTable *clusterCenters, vtkIdType row, vtkVariantArray *data, vtkIdType dataCardinality, vtkIdType totalCardinality) |
virtual void | PerturbElement (vtkTable *, vtkTable *, vtkIdType, vtkIdType, vtkIdType, double) |
virtual void * | AllocateElementArray (vtkIdType size) |
virtual void | DeallocateElementArray (void *) |
virtual vtkAbstractArray * | CreateCoordinateArray () |
virtual void | PackElements (vtkTable *curTable, void *vElements) |
virtual int | GetDataType () |
virtual void | UnPackElements (vtkTable *curTable, vtkTable *newTable, void *vLocalElements, void *vGlobalElements, int np) |
virtual void | UnPackElements (vtkTable *curTable, void *vLocalElements, vtkIdType numRows, vtkIdType numCols) |
Public Member Functions inherited from vtkObject | |
vtkObject * | NewInstance () const |
virtual void | DebugOn () |
virtual void | DebugOff () |
bool | GetDebug () |
void | SetDebug (bool debugFlag) |
virtual void | Modified () |
virtual unsigned long | GetMTime () |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
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 *) |
int | HasObserver (unsigned long event, vtkCommand *) |
int | HasObserver (const char *event, vtkCommand *) |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
int | HasObserver (unsigned long event) |
int | HasObserver (const char *event) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
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) |
int | InvokeEvent (unsigned long event, void *callData) |
int | InvokeEvent (const char *event, void *callData) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
Public Member Functions inherited from vtkObjectBase | |
const char * | GetClassName () const |
virtual void | Delete () |
virtual void | FastDelete () |
void | Print (ostream &os) |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
void | SetReferenceCount (int) |
void | PrintRevisions (ostream &) |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
int | GetReferenceCount () |
Static Public Member Functions | |
static vtkKMeansDistanceFunctor * | New () |
static int | IsTypeOf (const char *type) |
static vtkKMeansDistanceFunctor * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
static int | IsTypeOf (const char *type) |
static vtkObject * | SafeDownCast (vtkObjectBase *o) |
static vtkObject * | New () |
static void | BreakOnError () |
static void | SetGlobalWarningDisplay (int val) |
static void | GlobalWarningDisplayOn () |
static void | GlobalWarningDisplayOff () |
static int | GetGlobalWarningDisplay () |
Static Public Member Functions inherited from vtkObjectBase | |
static int | IsTypeOf (const char *name) |
static vtkObjectBase * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkKMeansDistanceFunctor () | |
virtual | ~vtkKMeansDistanceFunctor () |
Protected Member Functions inherited from vtkObject | |
vtkObject () | |
virtual | ~vtkObject () |
virtual void | RegisterInternal (vtkObjectBase *, int check) |
virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
void | InternalReleaseFocus () |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
vtkVariantArray * | EmptyTuple |
vtkTable * | CenterUpdates |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
measure distance from k-means cluster centers
This is an abstract class (with a default concrete subclass) that implements algorithms used by the vtkKMeansStatistics filter that rely on a distance metric. If you wish to use a non-Euclidean distance metric (this could include working with strings that do not have a Euclidean distance metric, implementing k-mediods, or trying distance metrics in norms other than L2), you should subclass vtkKMeansDistanceFunctor.
Definition at line 22 of file vtkKMeansDistanceFunctor.h.
Definition at line 26 of file vtkKMeansDistanceFunctor.h.
|
protected |
|
protectedvirtual |
|
static |
|
static |
|
virtual |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
Reimplemented in vtkKMeansDistanceFunctorCalculator.
|
static |
|
protectedvirtual |
Reimplemented from vtkObject.
Reimplemented in vtkKMeansDistanceFunctorCalculator.
vtkKMeansDistanceFunctor* vtkKMeansDistanceFunctor::NewInstance | ( | ) | const |
|
virtual |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject.
Reimplemented in vtkKMeansDistanceFunctorCalculator.
|
virtual |
Return an empty tuple. These values are used as cluster center coordinates when no initial cluster centers are specified.
|
virtual |
Compute the distance from one observation to another, returning the distance in the first argument.
Reimplemented in vtkKMeansDistanceFunctorCalculator.
|
virtual |
This is called once per observation per run per iteration in order to assign the observation to its nearest cluster center after the distance functor has been evaluated for all the cluster centers. The distance functor is responsible for incrementally updating the cluster centers to account for the assignment.
|
virtual |
When a cluster center (1) has no observations that are closer to it than other cluster centers or (2) has exactly the same coordinates as another cluster center, its coordinates should be perturbed. This function should perform that perturbation. Since perturbation relies on a distance metric, this function is the responsibility of the distance functor.
|
virtual |
Allocate an array large enough to hold size coordinates and return a void pointer to this array. This is used by vtkPKMeansStatistics to send (receive) cluster center coordinates to (from) other processes.
|
virtual |
Free an array allocated with AllocateElementArray.
|
virtual |
Return a vtkAbstractArray capable of holding cluster center coordinates. This is used by vtkPKMeansStatistics to hold cluster center coordinates sent to (received from) other processes.
|
virtual |
Pack the cluster center coordinates in vElements into columns of curTable. This code may assume that the columns in curTable are all of the type returned by GetNewVTKArray().
|
virtual |
Unpack the cluster center coordinates in vElements into columns of curTable. This code may assume that the columns in curTable are all of the type returned by GetNewVTKArray().
|
virtual |
Unpack the cluster center coordinates in vElements into columns of curTable. This code may assume that the columns in curTable are all of the type returned by GetNewVTKArray().
|
virtual |
Return the data type used to store cluster center coordinates.
|
protected |
Definition at line 85 of file vtkKMeansDistanceFunctor.h.
|
protected |
Definition at line 86 of file vtkKMeansDistanceFunctor.h.