1 #ifndef wxMaracasRenderTabbedPanel_H_
2 #define wxMaracasRenderTabbedPanel_H_
5 #include <wx/notebook.h>
7 #include "wxMaracasRenderImageManagementPanel.h"
8 //#include "CutModelMainPanel.h"
9 #include "wxMaracasMultipleVolumeRendererManager.h"
10 #include "wxMaracasSurfaceRenderingManager.h"
11 #include "wxVtkBaseView.h"
12 #include "wxMPRWidget.h"
15 class wxMaracasRenderTabbedPanel : public wxPanel
19 wxMaracasRenderTabbedPanel(wxWindow* parent, int id, wxVtk3DBaseView* _baseView);
20 ~wxMaracasRenderTabbedPanel();
22 void createControls(vtkImageData* inImg, std::string pathfile, std::string filename);
23 void setRenderer(vtkRenderer* rend);
24 void addVolume(vtkImageData* img, std::string dataname);
25 void addSurface1(vtkImageData* img, std::string dataname);
26 void addSurface2(vtkImageData* img, std::string dataname);
27 void addSurface3(vtkImageData* img, std::string dataname);
29 void deleteVolume(int volid);
30 void Transform(vtkMatrix4x4* tmatrix);
31 void addRemoveActorV(int id, bool addremove);
32 void addRemoveActorSA(int id, bool addremove);
33 void addRemoveActorSB(int id, bool addremove);
34 void addRemoveActorSC(int id, bool addremove);
37 // ----- Volume rendering functions ----- //
38 void SetValuesColorPointsFunction(int volid, std::vector<double> greylevelcolors,std::vector<double> red,std::vector<double> green,std::vector<double> blue);
39 void SetValuesPointsFunction(int volid, std::vector<double> greylevel, std::vector<double> values);
40 vtkPiecewiseFunction* GetTransferFunction(int volumeid);
41 vtkColorTransferFunction* GetColorFunction(int volumeid);
43 // ----- Surface rendering functions ----- //
44 void changeOpacityA(int _propid, int value);
45 void changeIsoValueA(int propid, double value);
46 void changeColorA(int propid, double red, double green, double blue);
47 void changeOpacityB(int _propid, int value);
48 void changeIsoValueB(int propid, double value);
49 void changeColorB(int propid, double red, double green, double blue);
50 void changeOpacityC(int _propid, int value);
51 void changeIsoValueC(int propid, double value);
52 void changeColorC(int propid, double red, double green, double blue);
54 void onCheckBoxVChange(wxCommandEvent& event);
55 void onCheckBoxSAChange(wxCommandEvent& event);
56 void onCheckBoxSBChange(wxCommandEvent& event);
57 void onCheckBoxSCChange(wxCommandEvent& event);
58 void onMPROptions(wxCommandEvent& event);
60 void onOpenParameters(wxCommandEvent& event);
61 void onColorChange(wxCommandEvent& event);
62 void onOpenCutter(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 //wxBitmapButton* _viewimage;
82 wxVtk3DBaseView* baseView;
83 wxVtkMPR3DView* mwxvtkmpr3Dview;
84 vtkMPR3DDataViewer* vtkmpr3Ddataviewer;
85 wxPanel* controlPanelMPR3D;
90 //CutModel2MainPanel* cutter;
91 wxMaracasRenderImageManagementPanel* dialog;
92 wxMaracasMultipleVolumeRendererManager* volmanager;
93 wxMaracasSurfaceRenderingManager* surrendmanager1;
94 wxMaracasSurfaceRenderingManager* surrendmanager2;
95 wxMaracasSurfaceRenderingManager* surrendmanager3;
98 #endif /*wxMaracasMultipleVolumeRendererPanel_H_*/