1 #ifndef WXMARACASSURFACERENDERINGMANAGERDATAMHD_H_
2 #define WXMARACASSURFACERENDERINGMANAGERDATAMHD_H_
5 #include "wxMaracasSurfaceRenderingManagerData.h"
6 #include "boxSurfaceObserver.h"
8 #include "vtkMetaImageReader.h"
9 #include "vtkMarchingCubes.h"
10 #include "vtkCleanPolyData.h"
11 #include "vtkImageData.h"
12 #include "vtkClipPolyData.h"
13 #include "vtkPlanes.h"
14 #include "vtkImageThreshold.h"
15 #include "vtkSmoothPolyDataFilter.h"
17 class wxMaracasSurfaceRenderingManagerDataMhd : public wxMaracasSurfaceRenderingManagerData {
21 wxMaracasSurfaceRenderingManagerDataMhd(vtkImageData* imagedata, std::string dataname="", vtkRenderWindowInteractor* interactor=0);
22 ~wxMaracasSurfaceRenderingManagerDataMhd();
26 ** Adds a prop3D to the world of the application
28 void setVtkImageData(vtkImageData* imagedata);
31 ** changes the isovalue in a prop3D
33 void changeIsoValue(double value);
35 ** changes the isovalue in a prop3D
37 void changeIsoValue(double min, double max);
39 ** Check if the variables are setted correctly
41 void checkInvariant();
44 ** Returns the grey max level of the image
47 int getMaxGreyLevel();
52 void contourExtractor(int isovalue);
59 virtual void enableBoxWidget(bool enable);
62 vtkImageData* _imagedata;
66 ** to the image render
68 vtkMarchingCubes* _cubesFilter;
69 vtkCleanPolyData* _cleanFilter;
70 vtkClipPolyData* _tissueClipper;
71 vtkPlanes* _tissuePlanes;
72 vtkImageThreshold * _tresholdFilter;
73 vtkSmoothPolyDataFilter* _smooth;
76 ** Get's the max grey level of the image
78 int getMaxLevel(vtkImageData* img);
84 #endif /*WXMARACASSURFACERENDERINGMANAGERDATAMHD_H_*/