#ifndef wxMaracasRenderTabbedPanel_H_ #define wxMaracasRenderTabbedPanel_H_ #include #include #include "wxMaracasRenderImageManagementPanel.h" #include "volumerenderermanager.h" #include "wxMaracasSurfaceRenderingManager.h" #include "wxVtkBaseView.h" #include "wxMPRWidget.h" class wxMaracasRenderTabbedPanel : public wxPanel { public: wxMaracasRenderTabbedPanel(wxWindow* parent, int id, wxVtk3DBaseView* _baseView); ~wxMaracasRenderTabbedPanel(); void createControls(vtkImageData* inImg, std::string pathfile, std::string filename); void setRenderer(vtkRenderer* rend); void addVolume(vtkImageData* img, std::string dataname); void addSurface1(vtkImageData* img, std::string dataname); void addSurface2(vtkImageData* img, std::string dataname); void addSurface3(vtkImageData* img, std::string dataname); void deleteVolume(int volid); void addRemoveActorV(int id, bool addremove); void addRemoveActorSA(int id, bool addremove); void addRemoveActorSB(int id, bool addremove); void addRemoveActorSC(int id, bool addremove); void addRemoveActorMPR(bool addremove); void addMPROptions(); // ----- Volume rendering functions ----- // void SetValuesColorPointsFunction(int volid, std::vector greylevelcolors,std::vector red,std::vector green,std::vector blue); void SetValuesPointsFunction(int volid, std::vector greylevel, std::vector values); vtkPiecewiseFunction* GetTransferFunction(int volumeid); vtkColorTransferFunction* GetColorFunction(int volumeid); // ----- Surface rendering functions ----- // void changeOpacityA(int _propid, int value); void changeIsoValueA(int propid, double value); void changeColorA(int propid, double red, double green, double blue); void changeOpacityB(int _propid, int value); void changeIsoValueB(int propid, double value); void changeColorB(int propid, double red, double green, double blue); void changeOpacityC(int _propid, int value); void changeIsoValueC(int propid, double value); void changeColorC(int propid, double red, double green, double blue); void onCheckBoxVChange(wxCommandEvent& event); void onCheckBoxSAChange(wxCommandEvent& event); void onCheckBoxSBChange(wxCommandEvent& event); void onCheckBoxSCChange(wxCommandEvent& event); void onMPROptions(wxCommandEvent& event); void onOpenParameters(wxCommandEvent& event); void onColorChange(wxCommandEvent& event); void onOpenCutter(wxCommandEvent& event); void OnRefreshView(wxCommandEvent& event); vtkImageData* getVolImage(); vtkImageData* getSurfAImage(); vtkImageData* getSurfBImage(); vtkImageData* getSurfCImage(); int getPropIdV(); private: wxCheckBox* checkboxVol; wxCheckBox* checkboxSA; wxCheckBox* checkboxSB; wxCheckBox* checkboxSC; wxCheckBox* checkboxViewer; wxPanel* controlPanelMPR3D; wxNotebook* wxtabs; wxString volname; wxVtk3DBaseView* baseView; wxVtkMPR3DView* mwxvtkmpr3Dview; vtkMPR3DDataViewer* vtkmpr3Ddataviewer; bool first; int _id; wxMaracasRenderImageManagementPanel* dialog; VolumeRendererManager* volmanager; wxMaracasSurfaceRenderingManager* surrendmanager1; wxMaracasSurfaceRenderingManager* surrendmanager2; wxMaracasSurfaceRenderingManager* surrendmanager3; DECLARE_EVENT_TABLE( ); }; #endif /*wxMaracasMultipleVolumeRendererPanel_H_*/