wxMaracasSurfaceRendering.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   wxMaracas
00004   Module:    $RCSfile: wxMaracasSurfaceRendering.h,v $
00005   Language:  C++
00006   Date:      $Date: 2010/01/22 17:00:52 $
00007   Version:   $Revision: 1.5 $
00008 
00009   Copyright: (c) 2002, 2003
00010   License:
00011 
00012      This software is distributed WITHOUT ANY WARRANTY; without even
00013      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00014      PURPOSE.  See the above copyright notice for more information.
00015 
00016 =========================================================================*/
00017 
00018 #ifndef __wxMaracasSurfaceRenderingPanelH__
00019 #define __wxMaracasSurfaceRenderingPanelH__
00020 
00021 #include <vector>
00022 #include <wx/wx.h>
00023 #include "wx/aui/aui.h"
00024 #include <iostream>
00025 #include "marTypes.h"
00026 #include "vtkProp3D.h"
00027 
00028 #include "wxMaracasSurfaceRenderingManager.h"
00029 #include "wxMaracasSurfaceRenderingPanel.h"
00030 
00031 class  creaMaracasVisu_EXPORT  wxMaracasSurfaceRendering : public wxPanel
00032 {
00033 
00034 public:
00035     wxMaracasSurfaceRendering( wxWindow* parent, std::string path);
00036     ~wxMaracasSurfaceRendering( );
00037 
00038     static wxMaracasSurfaceRendering* getInstance(wxWindow* parent,std::string path="");
00039 
00040     static wxMaracasSurfaceRendering* getInstance();
00041 
00042     void setRenderer(vtkRenderer*  renderer);
00043 
00044     void setInteractor(vtkRenderWindowInteractor*  interactor);
00045 
00046     void changeOpacity(int propid, int value);
00047 
00048     void changeIsoValue(int propid, double value);
00049 
00050     void addRemoveActor(int propid, bool addremove);
00051 
00052     void addRemoveSurfaceBox(int propid, bool addremove);
00053 
00054     void changeColor(int propid, double red, double green, double blue);
00055 
00056     void addProp3D(vtkProp3D* prop3D, std::string dataname="");
00057 
00058     void addPropMHD(vtkImageData* imgdata, std::string dataname="");
00059 
00060     void loadProp3D(wxString filename, wxString dataname);
00061 
00062     void loadPropMHD(wxString filename, wxString dataname);
00063 
00064     void onLoadImageFile();
00065 
00066     void addSurfaceRenderingPanel(wxMaracasSurfaceRenderingPanel* surrend, std::string dataname="");
00067 
00068     std::string getPath();
00069 
00070     void deleteActor(int propid);
00071 
00072     bool interactorSet();
00073 
00074 private:
00075     static wxMaracasSurfaceRendering* instance;
00076 
00077     wxMaracasSurfaceRenderingManager* surrendmanager;
00078         
00079     wxAuiManager* wxauimanager;
00080     
00081     wxToolBar* _toolb;
00082 
00083     std::string _path;
00084 
00085     void createFileChooser();
00086 };
00087 
00088 class ToolBarEventHandler : public wxEvtHandler{
00089 
00090         public:
00091                 ToolBarEventHandler();
00092                 ~ToolBarEventHandler();
00093 
00094                 void onLoadImageFile(wxCommandEvent& event);
00095 
00096         private:
00097 
00098                 DECLARE_EVENT_TABLE()
00099         };
00100 
00101 class ToolBar : public wxToolBar{
00102 
00103 public:
00104         ToolBar(wxWindow * parent,std::string iconsdir);
00105         ~ToolBar(void);
00106 
00107 private:
00108 
00109         ToolBarEventHandler* _evthand;
00110 };
00111 
00112 #endif

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1