X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxMaracasRenderTabbedPanel.h;h=3dd2a336f045e9805068e2a0f239c9a8f4db22d6;hb=978a6b69b838cd857d997d53e1392573853ae702;hp=492e456b344ebfe563fd6e8f0c73f9c07be72942;hpb=8e28248048ebb13908702adb87a319047af16939;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.h index 492e456..3dd2a33 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.h @@ -3,55 +3,95 @@ #include #include -#include "wxMaracasMultipleVolumeRendererPanel.h" -#include "wxMaracasSurfaceRenderingPanel.h" + +#include "wxMaracasRenderImageManagementPanel.h" #include "wxMaracasMultipleVolumeRendererManager.h" #include "wxMaracasSurfaceRenderingManager.h" -#include "wxMaracasSurfaceRenderingProp3DMHD.h" +#include "wxVtkBaseView.h" +#include "wxMPRWidget.h" class wxMaracasRenderTabbedPanel : public wxPanel { public: - wxMaracasRenderTabbedPanel(wxWindow* parent, wxMaracasMultipleVolumeRendererManager* img1, wxMaracasSurfaceRenderingManager* img2, wxMaracasSurfaceRenderingManager* img3, - wxMaracasSurfaceRenderingManager* img4, wxString filename, wxString dataname); + wxMaracasRenderTabbedPanel(wxWindow* parent, int id, wxVtk3DBaseView* _baseView); ~wxMaracasRenderTabbedPanel(); - void createControls(wxString filename, wxString dataname); - wxMaracasMultipleVolumeRendererPanel* addVolume(vtkImageData* img, std::string dataname); - wxMaracasSurfaceRenderingPanel* addSurface1(vtkImageData* img, std::string dataname); - wxMaracasSurfaceRenderingPanel* addSurface2(vtkImageData* img, std::string dataname); - wxMaracasSurfaceRenderingPanel* addSurface3(vtkImageData* img, std::string dataname); + + 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 onOK(wxCommandEvent& event); - void onCancel(wxCommandEvent& event); - void onUpdate(wxCommandEvent& event); - void onViewImage(wxCommandEvent& event); + void onOpenCutter(wxCommandEvent& event); + void OnRefreshView(wxCommandEvent& event); + + vtkImageData* getVolImage(); + vtkImageData* getSurfAImage(); + vtkImageData* getSurfBImage(); + vtkImageData* getSurfCImage(); - void updateVolume(); - int getPropId(); + int getPropIdV(); private: wxCheckBox* checkboxVol; wxCheckBox* checkboxSA; wxCheckBox* checkboxSB; wxCheckBox* checkboxSC; - //wxBitmapButton* _viewimage; - + wxCheckBox* checkboxViewer; + wxPanel* controlPanelMPR3D; wxNotebook* wxtabs; - - int _propid; + wxString volname; + + wxVtk3DBaseView* baseView; + wxVtkMPR3DView* mwxvtkmpr3Dview; + vtkMPR3DDataViewer* vtkmpr3Ddataviewer; bool first; + int _id; + wxMaracasRenderImageManagementPanel* dialog; wxMaracasMultipleVolumeRendererManager* volmanager; - wxMaracasSurfaceRenderingManager* surrendmanager1; - wxMaracasSurfaceRenderingManager* surrendmanager2; - wxMaracasSurfaceRenderingManager* surrendmanager3; + wxMaracasSurfaceRenderingManager* surrendmanager1; + wxMaracasSurfaceRenderingManager* surrendmanager2; + wxMaracasSurfaceRenderingManager* surrendmanager3; + + DECLARE_EVENT_TABLE( ); }; #endif /*wxMaracasMultipleVolumeRendererPanel_H_*/