X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxMaracasRenderTabbedPanel.h;h=a22e5616885ef8e5b5ff70f86309050f3c654074;hb=8e51f74bc77447daf61b8e1caf7ab07ae235b578;hp=35efe8dd7ecabb967d9b51353a9f0548a9d4fee6;hpb=ff4adfbc5df1494e30a43b91dffc2a35205d4421;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.h index 35efe8d..a22e561 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.h @@ -3,38 +3,69 @@ #include #include -#include "wxMaracasMultipleVolumeRendererPanel.h" -#include "wxMaracasSurfaceRenderingPanel.h" +#include "wxMaracasRenderImageManagementPanel.h" + #include "wxMaracasMultipleVolumeRendererManager.h" #include "wxMaracasSurfaceRenderingManager.h" -#include "wxMaracasSurfaceRenderingProp3DMHD.h" + class wxMaracasRenderTabbedPanel : public wxPanel { public: - wxMaracasRenderTabbedPanel(wxWindow* parent, wxMaracasMultipleVolumeRendererManager* img1, wxMaracasSurfaceRenderingManager* img2, wxMaracasSurfaceRenderingManager* img3, - wxMaracasSurfaceRenderingManager* img4, wxString filename, wxString dataname); + wxMaracasRenderTabbedPanel(wxWindow* parent); ~wxMaracasRenderTabbedPanel(); - void createControls(wxMaracasMultipleVolumeRendererManager* volmanager, wxMaracasSurfaceRenderingManager* surrendmanager1, wxMaracasSurfaceRenderingManager* surrendmanager2, - wxMaracasSurfaceRenderingManager* surrendmanager3, wxString filename, wxString dataname); - wxMaracasMultipleVolumeRendererPanel* addVolume(wxMaracasMultipleVolumeRendererManager* volmanager, vtkImageData* img, std::string dataname); - wxMaracasSurfaceRenderingPanel* addSurface1(wxMaracasSurfaceRenderingManager* surrendmanager, vtkImageData* img, std::string dataname); - wxMaracasSurfaceRenderingPanel* addSurface2(wxMaracasSurfaceRenderingManager* surrendmanager, vtkImageData* img, std::string dataname); - wxMaracasSurfaceRenderingPanel* addSurface3(wxMaracasSurfaceRenderingManager* surrendmanager, 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 Transform(vtkMatrix4x4* tmatrix); + void addRemoveActorV(int id, bool addremove); + void addRemoveActorSA(int id, bool addremove); + void addRemoveActorSB(int id, bool addremove); + void addRemoveActorSC(int id, bool addremove); + + // ----- 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 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); + + vtkImageData* getVolImage(int id); + vtkImageData* getSurfAImage(int id); + vtkImageData* getSurfBImage(int id); + vtkImageData* getSurfCImage(int id); - void updateVolume(); - int getPropId(); + int getPropIdV(); + int getPropIdSA(); + int getPropIdSB(); + int getPropIdSC(); private: wxCheckBox* checkboxVol; @@ -44,15 +75,19 @@ private: //wxBitmapButton* _viewimage; wxNotebook* wxtabs; + wxMaracasRenderImageManagementPanel* dialog; - int _propid; + int _propidV; + int _propidSA; + int _propidSB; + int _propidSC; bool first; - //wxMaracasMultipleVolumeRendererPanel* _irmview; - //wxMaracasSurfaceRenderingPanel* _surview1; - //wxMaracasSurfaceRenderingPanel* _surview2; - //wxMaracasSurfaceRenderingPanel* _surview3; + wxMaracasMultipleVolumeRendererManager* volmanager; + wxMaracasSurfaceRenderingManager* surrendmanager1; + wxMaracasSurfaceRenderingManager* surrendmanager2; + wxMaracasSurfaceRenderingManager* surrendmanager3; }; #endif /*wxMaracasMultipleVolumeRendererPanel_H_*/