1 #ifndef wxMaracasRenderTabbedPanel_H_
2 #define wxMaracasRenderTabbedPanel_H_
5 #include <wx/notebook.h>
7 #include "wxMaracasRenderImageManagementPanel.h"
8 #include "volumerenderermanager.h"
9 #include "wxMaracasSurfaceRenderingManager.h"
10 #include "wxVtkBaseView.h"
11 #include "wxMPRWidget.h"
14 class wxMaracasRenderTabbedPanel : public wxPanel
18 wxMaracasRenderTabbedPanel(wxWindow* parent, int id, wxVtk3DBaseView* _baseView);
19 ~wxMaracasRenderTabbedPanel();
21 void createControls(vtkImageData* inImg, std::string pathfile, std::string filename);
22 void setRenderer(vtkRenderer* rend);
23 void addVolume(vtkImageData* img, std::string dataname);
24 void addSurface1(vtkImageData* img, std::string dataname);
25 void addSurface2(vtkImageData* img, std::string dataname);
26 void addSurface3(vtkImageData* img, std::string dataname);
28 void deleteVolume(int volid);
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);
33 void addRemoveActorMPR(bool addremove);
36 // ----- Volume rendering functions ----- //
37 void SetValuesColorPointsFunction(int volid, std::vector<double> greylevelcolors,std::vector<double> red,std::vector<double> green,std::vector<double> blue);
38 void SetValuesPointsFunction(int volid, std::vector<double> greylevel, std::vector<double> values);
39 vtkPiecewiseFunction* GetTransferFunction(int volumeid);
40 vtkColorTransferFunction* GetColorFunction(int volumeid);
42 // ----- Surface rendering functions ----- //
43 void changeOpacityA(int _propid, int value);
44 void changeIsoValueA(int propid, double value);
45 void changeColorA(int propid, double red, double green, double blue);
46 void changeOpacityB(int _propid, int value);
47 void changeIsoValueB(int propid, double value);
48 void changeColorB(int propid, double red, double green, double blue);
49 void changeOpacityC(int _propid, int value);
50 void changeIsoValueC(int propid, double value);
51 void changeColorC(int propid, double red, double green, double blue);
53 void onCheckBoxVChange(wxCommandEvent& event);
54 void onCheckBoxSAChange(wxCommandEvent& event);
55 void onCheckBoxSBChange(wxCommandEvent& event);
56 void onCheckBoxSCChange(wxCommandEvent& event);
57 void onMPROptions(wxCommandEvent& event);
59 void onOpenParameters(wxCommandEvent& event);
60 void onColorChange(wxCommandEvent& event);
61 void onOpenCutter(wxCommandEvent& event);
62 void OnRefreshView(wxCommandEvent& event);
64 vtkImageData* getVolImage();
65 vtkImageData* getSurfAImage();
66 vtkImageData* getSurfBImage();
67 vtkImageData* getSurfCImage();
72 wxCheckBox* checkboxVol;
73 wxCheckBox* checkboxSA;
74 wxCheckBox* checkboxSB;
75 wxCheckBox* checkboxSC;
76 wxCheckBox* checkboxViewer;
77 wxPanel* controlPanelMPR3D;
81 wxVtk3DBaseView* baseView;
82 wxVtkMPR3DView* mwxvtkmpr3Dview;
83 vtkMPR3DDataViewer* vtkmpr3Ddataviewer;
88 wxMaracasRenderImageManagementPanel* dialog;
89 VolumeRendererManager* volmanager;
90 wxMaracasSurfaceRenderingManager* surrendmanager1;
91 wxMaracasSurfaceRenderingManager* surrendmanager2;
92 wxMaracasSurfaceRenderingManager* surrendmanager3;
94 DECLARE_EVENT_TABLE( );
97 #endif /*wxMaracasMultipleVolumeRendererPanel_H_*/