1 #ifndef wxMaracasRenderTabbedPanel_H_
2 #define wxMaracasRenderTabbedPanel_H_
5 #include <wx/notebook.h>
6 #include "wxMaracasRenderImageManagementPanel.h"
8 #include "wxMaracasMultipleVolumeRendererManager.h"
9 #include "wxMaracasSurfaceRenderingManager.h"
13 class wxMaracasRenderTabbedPanel : public wxPanel
17 wxMaracasRenderTabbedPanel(wxWindow* parent, int id);
18 ~wxMaracasRenderTabbedPanel();
20 void createControls(vtkImageData* inImg, std::string pathfile, std::string filename);
21 void setRenderer(vtkRenderer* rend);
22 void addVolume(vtkImageData* img, std::string dataname);
23 void addSurface1(vtkImageData* img, std::string dataname);
24 void addSurface2(vtkImageData* img, std::string dataname);
25 void addSurface3(vtkImageData* img, std::string dataname);
27 void deleteVolume(int volid);
28 void Transform(vtkMatrix4x4* tmatrix);
29 void addRemoveActorV(int id, bool addremove);
30 void addRemoveActorSA(int id, bool addremove);
31 void addRemoveActorSB(int id, bool addremove);
32 void addRemoveActorSC(int id, bool addremove);
34 // ----- Volume rendering functions ----- //
35 void SetValuesColorPointsFunction(int volid, std::vector<double> greylevelcolors,std::vector<double> red,std::vector<double> green,std::vector<double> blue);
36 void SetValuesPointsFunction(int volid, std::vector<double> greylevel, std::vector<double> values);
37 vtkPiecewiseFunction* GetTransferFunction(int volumeid);
38 vtkColorTransferFunction* GetColorFunction(int volumeid);
40 // ----- Surface rendering functions ----- //
41 void changeOpacityA(int _propid, int value);
42 void changeIsoValueA(int propid, double value);
43 void changeColorA(int propid, double red, double green, double blue);
44 void changeOpacityB(int _propid, int value);
45 void changeIsoValueB(int propid, double value);
46 void changeColorB(int propid, double red, double green, double blue);
47 void changeOpacityC(int _propid, int value);
48 void changeIsoValueC(int propid, double value);
49 void changeColorC(int propid, double red, double green, double blue);
51 void onCheckBoxVChange(wxCommandEvent& event);
52 void onCheckBoxSAChange(wxCommandEvent& event);
53 void onCheckBoxSBChange(wxCommandEvent& event);
54 void onCheckBoxSCChange(wxCommandEvent& event);
56 void onOpenParameters(wxCommandEvent& event);
57 void onColorChange(wxCommandEvent& event);
58 void onOpenCutter(wxCommandEvent& event);
60 vtkImageData* getVolImage();
61 vtkImageData* getSurfAImage();
62 vtkImageData* getSurfBImage();
63 vtkImageData* getSurfCImage();
68 wxCheckBox* checkboxVol;
69 wxCheckBox* checkboxSA;
70 wxCheckBox* checkboxSB;
71 wxCheckBox* checkboxSC;
72 //wxBitmapButton* _viewimage;
75 wxMaracasRenderImageManagementPanel* dialog;
79 wxMaracasMultipleVolumeRendererManager* volmanager;
80 wxMaracasSurfaceRenderingManager* surrendmanager1;
81 wxMaracasSurfaceRenderingManager* surrendmanager2;
82 wxMaracasSurfaceRenderingManager* surrendmanager3;
89 #endif /*wxMaracasMultipleVolumeRendererPanel_H_*/