]> Creatis software - creaMaracasVisu.git/blob - lib/Kernel/VTKObjects/SurfaceRenderer/wxMaracasSurfaceRenderingManagerData.h
addition of files
[creaMaracasVisu.git] / lib / Kernel / VTKObjects / SurfaceRenderer / wxMaracasSurfaceRenderingManagerData.h
1 #ifndef WXMARACASSURFACERENDERINGMANAGERDATA_H_
2 #define WXMARACASSURFACERENDERINGMANAGERDATA_H_
3
4 #include "vtkProp3D.h"
5 #include "vtkRenderer.h"
6 #include "vtkSTLReader.h"
7 #include "vtkPolyDataMapper.h"
8 #include "vtkActor.h"
9 #include "vtkProperty.h"
10 #include "vtkBoxWidget.h"
11
12
13
14 class wxMaracasSurfaceRenderingManagerData {
15
16 public:
17         wxMaracasSurfaceRenderingManagerData(vtkProp3D* _prop3Dvect, std::string dataname="", vtkRenderWindowInteractor*  interactor=NULL);     
18         ~wxMaracasSurfaceRenderingManagerData();        
19         
20         /**
21         **      Adds a prop3D to the world of the application
22         **/
23         void setProp3D(vtkProp3D* prop3D);
24         /**
25         **      Changes the opacity in a prop3D
26         **/
27         void changeOpacity(int value);          
28         /**
29         **      Check if the variables are setted correctly
30         **/
31         void checkInvariant();
32         /**
33         **      get the prop3D 
34         **/
35         vtkProp3D* getProp3D();
36         /**
37         **      return the id from the daat
38         **/
39         int getId();
40         /**
41         **      set data id
42         **/
43         void setId(int propid);
44         /**
45         **      Get the filanme
46         **/
47     std::string getDataname();
48         /**
49         ** Set the filanme
50         **/
51     void setDataname(std::string dataname);
52         
53         /**
54         **      creates the image 
55         **/
56         void contourExtractor(int isovalue);
57
58         /**
59         **      Changes the color of the actor
60         **/
61         void changeColor(double red, double green, double blue);        
62         
63         /**
64         ** adds or removes the surface box
65         **/
66         void addRemoveSurfaceBox(bool visible);
67
68         void initializeBoxWidget(vtkRenderWindowInteractor*  interactor);
69
70         void saveProp3DSTL(const char* filename);
71
72         virtual void enableBoxWidget(bool enable);
73
74 protected:
75         vtkPolyDataMapper* _dataMapper;
76         /**
77          * Prop 3D (data actor)
78          */
79         vtkProp3D* _prop3D;     
80         /**
81          *  Dataname given by the user (ex. filename) 
82          **/
83         std::string _dataname;  
84         
85         /**
86         **
87         **/
88         vtkBoxWidget* _boxWidgetS1;
89 private:
90         
91         /*
92          * id of the data
93          */
94         int _id;                
95
96         
97
98         
99 };
100
101 #endif /*WXMARACASSURFACERENDERINGMANAGERDATA_H_*/