VTK
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
dox
Hybrid
vtkPCAAnalysisFilter.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkPCAAnalysisFilter.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
=========================================================================*/
53
#ifndef __vtkPCAAnalysisFilter_h
54
#define __vtkPCAAnalysisFilter_h
55
56
#include "
vtkPointSetAlgorithm.h
"
57
58
class
vtkFloatArray
;
59
class
vtkPointSet
;
60
61
class
VTK_HYBRID_EXPORT
vtkPCAAnalysisFilter
:
public
vtkPointSetAlgorithm
62
{
63
public
:
64
vtkTypeMacro(
vtkPCAAnalysisFilter
,
vtkPointSetAlgorithm
);
65
67
void
PrintSelf
(ostream& os,
vtkIndent
indent);
68
70
static
vtkPCAAnalysisFilter
*
New
();
71
73
74
vtkGetObjectMacro(Evals,
vtkFloatArray
);
76
78
void
SetNumberOfInputs(
int
n);
79
81
83
void
SetInput
(
int
idx,
vtkPointSet
* p);
84
void
SetInput
(
int
idx,
vtkDataObject
* input);
86
89
vtkPointSet
*
GetInput
(
int
idx);
90
97
void
GetParameterisedShape(
vtkFloatArray
*b,
vtkPointSet
* shape);
98
104
void
GetShapeParameters(
vtkPointSet
*shape,
vtkFloatArray
*b,
int
bsize);
105
108
int
GetModesRequiredFor(
double
proportion);
109
110
protected
:
111
vtkPCAAnalysisFilter
();
112
~
vtkPCAAnalysisFilter
();
113
115
116
virtual
int
RequestData
(
vtkInformation
*,
vtkInformationVector
**,
vtkInformationVector
*);
117
virtual
int
FillInputPortInformation
(
int
port
,
vtkInformation
*
info
);
119
120
private
:
121
vtkPCAAnalysisFilter
(
const
vtkPCAAnalysisFilter
&);
// Not implemented.
122
void
operator=(
const
vtkPCAAnalysisFilter
&);
// Not implemented.
123
124
// Eigenvalues
125
vtkFloatArray
*Evals;
126
127
// Matrix where each column is an eigenvector
128
double
**evecMat2;
129
130
// The mean shape in a vector
131
double
*meanshape;
132
};
133
134
#endif
135
136
Generated on Thu Mar 13 2014 08:10:14 for VTK by
1.8.1.2