13 #ifndef mitkImageToSurfaceFilter_h
14 #define mitkImageToSurfaceFilter_h
20 #include <vtkPolyData.h>
23 #include <vtkImageData.h>
25 #include <vtkMarchingCubes.h>
26 #include <vtkSmoothPolyDataFilter.h>
67 itkFactorylessNewMacro(
Self);
75 void GenerateData()
override;
81 void GenerateOutputInformation()
override;
92 using itk::ProcessObject::SetInput;
103 void SetSmoothIteration(
int smoothIteration);
114 void SetSmoothRelaxation(
float smoothRelaxation);
134 itkSetMacro(Smooth,
bool);
139 itkBooleanMacro(Smooth);
144 itkGetConstMacro(Smooth,
bool);
166 itkSetMacro(TargetReduction,
float);
171 itkGetConstMacro(TargetReduction,
float);
176 template <
class T1,
class T2,
class T3>
179 T3 x = matrix[0][0] * in[0] + matrix[0][1] * in[1] + matrix[0][2] * in[2] + matrix[0][3];
180 T3 y = matrix[1][0] * in[0] + matrix[1][1] * in[1] + matrix[1][2] * in[2] + matrix[1][3];
181 T3 z = matrix[2][0] * in[0] + matrix[2][1] * in[1] + matrix[2][2] * in[2] + matrix[2][3];