/*========================================================================= Program: wxMaracas Module: $RCSfile: wxSurfaceSTLWidget.h,v $ Language: C++ Date: $Date: 2008/10/31 16:32:43 $ Version: $Revision: 1.1 $ Copyright: (c) 2002, 2003 License: This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notice for more information. =========================================================================*/ #ifndef __WX__3D__SURF__STL__WDG__ #define __WX__3D__SURF__STL__WDG__ //#include "wxVTKRenderWindowInteractor.h" #include "vtk3DSurfaceSTLWidget.h" #include #include #include //---------------------------------------------------------------------------- /** * \brief Panel class composed of a vtk renderwindow with double click available * and add some buttons */ class wxSurfaceSTLWidget : public wxPanel { public: enum ToolBarIDs { ID_TOOL_BAR = 300, ID_BUTTON_NEW_AXIS, ID_BUTTON_DELETE_AXIS, ID_CHECKBOX_ISOVISIBLE, ID_SLIDER_ISOVAL, ID_SLIDER_OPACITY, ID_BUTTON_CHOOSE_COLOR, ID_BUTTON_VESSELS_CONSTRUCTION, ID_BUTTON_3D_CUTTER, ID_BUTTON_EXPORT_STL, ID_CHECKBOX_STL_VISIBLE, ID_SLIDER_STL_THRESH, ID_CHECKBOX_INVERT_SLICE_ORDER, }; enum WidgetsIDs { ID_WORLD3D = 800 }; public: wxSurfaceSTLWidget( wxWindow* parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxScrolledWindowStyle, const wxString& name = wxPanelNameStr ); ~wxSurfaceSTLWidget( ); //vessels toolbar void OnVesselConstruction(wxCommandEvent& event); void On3DCutter(wxCommandEvent& event); void OnExportAsSTL(wxCommandEvent& event); //surface void OnChooseSurfaceColor(wxCommandEvent& event); void OnIsoVisible(wxCommandEvent& event); void OnSTLSurfaceVisible(wxCommandEvent& event); //slider isovalue void OnSliderIsovalueScrollThumbrelease(wxScrollEvent& event); //slider opacity void OnSliderOpacityScrollThumbrelease(wxScrollEvent& event); // Invers lecture order void OnInvertSliceOrder(wxCommandEvent& WXUNUSED(event)); void OnSliderSTLSurfaceValueThumbrelease(wxScrollEvent& event); void ShowMARACASData( marInterface* mar ); wxToolBar *_axis_tb; wxToolBar *_vessels_tb; wxCheckBox *_isoVisible; wxSlider *_isoValue; wxSlider *_opacity; wxButton *_surface_color; //mat wxCheckBox *_stlIntSurfaceVisible; wxCheckBox *_stlExtSurfaceVisible; wxSlider *_stlSurfaceValue; wxCheckBox *_chkInvertSliceOrder; marInterface* _mar; vtk3DSurfaceSTLWidget *_3DWorldSTL; DECLARE_EVENT_TABLE( ); }; #endif // __WX__3D__SURF__STL__WDG__