#ifndef _wxVtkPageView_h_ #define _wxVtkPageView_h_ // For compilers that supports precompilation , includes wx/wx.h #include "wx/wxprec.h" #ifndef WX_PRECOMP #include "wx/wx.h" #endif class wxVTKRenderWindowInteractor; class vtkViewImage2D; class vtkViewImage2DWithTracer; class vtkViewImage3D; class vtkView; class vtkImageData; class vtkLookupTable; class wxVtkPageView : public wxPanel { public: wxVtkPageView(wxWindow* parent, int id=wxID_ANY, const wxPoint& pos=wxDefaultPosition, const wxSize& size=wxDefaultSize, long style=wxDEFAULT_FRAME_STYLE, const wxString& title=wxT ("")); virtual ~wxVtkPageView(); //virtual void OnPaintEvent (wxPaintEvent &); void SetInput (vtkImageData*, const bool& reset=true); vtkImageData* GetInput (void) const; vtkViewImage2DWithTracer* GetView1(void) const { return m_View1; } vtkViewImage2DWithTracer* GetView2(void) const { return m_View2; } vtkViewImage2DWithTracer* GetView3(void) const { return m_View3; } vtkViewImage3D* GetView4(void) const { return m_View4; } void SetLookupTable (vtkLookupTable* lut); const char* GetImageName (void) const { return m_ImageName.c_str(); } void SetImageName (const char* name) { m_ImageName = name; } // 2D void SetInteractionStyle (int); void SetInteractionStyleToSelector (void); void SetInteractionStyleToWindowLevel (void); void SetInteractionStyleToZoom (void); void SetInteractionStyleToFullPage (void); // 3D void SetRenderingModeToMPR (void); void SetRenderingModeToVR (void); void OnFullScreen (unsigned int id); void NoFullScreen (void); // render the 4 views void Render (void); wxVTKRenderWindowInteractor* GetDisplayedView (void) const; protected: DECLARE_EVENT_TABLE() private: void SetProperties(void); void DoLayout(void); vtkViewImage2DWithTracer* m_View1; vtkViewImage2DWithTracer* m_View2; vtkViewImage2DWithTracer* m_View3; vtkViewImage3D* m_View4; wxVTKRenderWindowInteractor* m_ViewInteractor1; wxVTKRenderWindowInteractor* m_ViewInteractor2; wxVTKRenderWindowInteractor* m_ViewInteractor3; wxVTKRenderWindowInteractor* m_ViewInteractor4; std::string m_ImageName; }; #endif