00001 /*========================================================================= 00002 00003 Program: wxMaracas 00004 Module: $RCSfile: vtk2DQuantSliceWidget.h,v $ 00005 Language: C++ 00006 Date: $Date: 2009/05/14 13:54:57 $ 00007 Version: $Revision: 1.1 $ 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 #ifndef __VTK2DQUANTSLICEWIDGET__ 00018 #define __VTK2DQUANTSLICEWIDGET__ 00019 00020 #include "wxImageViewerWidget.h" 00021 00022 #include <vtkActor.h> 00023 #include <vtkPolyLine.h> 00024 #include <vtkDataSetMapper.h> 00025 #include <vtkPolyDataMapper.h> 00026 #include <vtkUnstructuredGrid.h> 00027 00028 00032 class vtk2DQuantSliceWidget : public wxImageViewerWidget 00033 { 00034 public: 00035 00036 vtk2DQuantSliceWidget( wxWindow* parent, 00037 wxWindowID id, 00038 const wxPoint& pos = wxDefaultPosition, 00039 const wxSize& size = wxDefaultSize, 00040 long style = wxSUNKEN_BORDER, //wxTAB_TRAVERSAL, 00041 const wxString& name = wxPanelNameStr 00042 ); 00043 ~vtk2DQuantSliceWidget( ); 00044 00045 //void SetContour( vtkUnstructuredGrid *cnt ); 00046 void SetContour( vtkPolyData *cnt ); 00047 void SetDiameterMin(vtkPoints *diameterMin, bool showActor); 00048 void SetDiameterMax(vtkPoints *diameterMax, bool showActor); 00049 void Show2DContourDiameters(); 00050 void Hide2DContourDiameters(); 00051 00052 protected: 00053 00054 private: 00055 00056 // Contour 00057 vtkPolyData *_cnt; 00058 vtkPolyDataMapper *_cntMapper; 00059 vtkActor *_cntActor; 00060 00061 // Diameter Min 00062 vtkActor *_diameterMinvtkActor; 00063 vtkPolyLine *_diameterMinvtkPolyLine; 00064 vtkDataSetMapper *_diameterMinvtkDataSetMapper; 00065 vtkUnstructuredGrid *_diameterMinvtkUnstructuredGrid; 00066 00067 // Diameter Max 00068 vtkActor *_diameterMaxvtkActor; 00069 vtkPolyLine *_diameterMaxvtkPolyLine; 00070 vtkDataSetMapper *_diameterMaxvtkDataSetMapper; 00071 vtkUnstructuredGrid *_diameterMaxvtkUnstructuredGrid; 00072 00073 00074 // DECLARE_EVENT_TABLE( ); 00075 00076 }; 00077 00078 #endif //__VTK2DQUANTSLICEWIDGET__