VTK
vtkHighestDensityRegionsStatistics.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: Visualization Toolkit
4 Module: vtkHighestDensityRegionsStatistics.h
5 
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
41 #ifndef vtkHighestDensityRegionsStatistics_h
42 #define vtkHighestDensityRegionsStatistics_h
43 
44 #include "vtkFiltersStatisticsModule.h" // For export macro
45 #include "vtkStatisticsAlgorithm.h"
46 
48 class vtkVariant;
49 
52 {
53 public:
55  virtual void PrintSelf( ostream& os, vtkIndent indent );
57 
59 
61  vtkMultiBlockDataSet*) { return; }
63 
68  void SetSigma(double sigma);
69 
71 
72  vtkGetVectorMacro(SmoothHC1, double, 2);
73  vtkSetVectorMacro(SmoothHC1, double, 2);
74  vtkGetVectorMacro(SmoothHC2, double, 2);
75  vtkSetVectorMacro(SmoothHC2, double, 2);
77 
83  double ComputeHDR(vtkDataArray *inObservations, vtkDataArray *outDensity);
84 
86 
91  double ComputeHDR(vtkDataArray *inObs, vtkDataArray* inPOI,
92  vtkDataArray *outDensity);
93 protected:
97 
99 
100  virtual void Learn(vtkTable*,
101  vtkTable*,
104 
106  virtual void Derive(vtkMultiBlockDataSet*);
107 
109 
110  virtual void Assess(vtkTable*,
112  vtkTable*) { return; }
114 
116 
117  virtual void Test(vtkTable*,
119  vtkTable*) { return; }
121 
122 //BTX
124 
126  vtkDataObject*,
128  AssessFunctor*&) { return; }
129 //ETX
131 
133 
135  double SmoothHC1[2];
136  double SmoothHC2[2];
138 
141 
142 private :
147  double ComputeSmoothGaussianKernel(int dimension, double khx, double khy);
148 
152  double ComputeStandardGaussianKernel(int dimension, double kx, double ky);
153 
154 private:
156  void operator = (const vtkHighestDensityRegionsStatistics&); // Not implemented
157 };
158 
159 #endif
virtual void Test(vtkTable *, vtkMultiBlockDataSet *, vtkTable *)
static vtkTableAlgorithm * New()
virtual void Aggregate(vtkDataObjectCollection *, vtkMultiBlockDataSet *)
void PrintSelf(ostream &os, vtkIndent indent)
maintain an unordered list of data objects
a vtkAbstractArray subclass for strings
int vtkIdType
Definition: vtkType.h:275
A atomic type representing the union of many types.
Definition: vtkVariant.h:78
Base class for statistics algorithms.
a simple class to control print indentation
Definition: vtkIndent.h:38
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:54
virtual void Learn(vtkTable *, vtkTable *, vtkMultiBlockDataSet *)=0
virtual void Derive(vtkMultiBlockDataSet *)=0
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:67
Composite dataset that organizes datasets into blocks.
virtual void SelectAssessFunctor(vtkTable *, vtkDataObject *, vtkStringArray *, AssessFunctor *&)
virtual void Assess(vtkTable *, vtkMultiBlockDataSet *, vtkTable *)
Compute a random vector of density f from input observations points. f is computed using a smooth ker...
#define VTKFILTERSSTATISTICS_EXPORT
general representation of visualization data
Definition: vtkDataObject.h:64