wxManualSegmentation_MPRWidget Class Reference

#include <wxManualSegmentation_MPRWidget.h>

Collaboration diagram for wxManualSegmentation_MPRWidget:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 wxManualSegmentation_MPRWidget (wxWindow *parent, marImageData *marimageData, double voxelSize)
 ~wxManualSegmentation_MPRWidget ()
void ConfigureVTK ()
void RefreshView ()
void OnRefreshView (wxCommandEvent &event)
vtkMPRBaseDataGetVtkMPRBaseData ()
vtkPlane2DViewGetVtkPlane2DView ()
vtkRenderer * GetRenderer ()

Private Member Functions

wxPanel * Create3DViewContour (wxWindow *parent, vtkMPRBaseData *vtkmprbasedata)
void ConfigureContour ()
 DECLARE_EVENT_TABLE ()

Private Attributes

double _voxelSize
marImageData_marimageData
wxMPRWidget2_MPRWidget2
wxVtk3DBaseView_wxvtk3Dbaseview_Clipping3D_C
wxVtkMPR3DView_wxvtkmpr3Dview_C
wxVtkClipping3DView_wxvtkclipping3Dview_C

Detailed Description

Definition at line 34 of file wxManualSegmentation_MPRWidget.h.


Constructor & Destructor Documentation

wxManualSegmentation_MPRWidget::wxManualSegmentation_MPRWidget ( wxWindow *  parent,
marImageData marimageData,
double  voxelSize 
)

Definition at line 41 of file wxManualSegmentation_MPRWidget.cxx.

00043 : wxPanel( parent, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL)
00044 {
00045 
00046         _voxelSize                                                      = voxelSize;
00047         _marimageData                                                   = marimageData;
00048 
00049         _wxvtk3Dbaseview_Clipping3D_C           = NULL;
00050         _wxvtkmpr3Dview_C                                       = NULL;
00051         _wxvtkclipping3Dview_C                          = NULL;
00052 
00053     wxSplitterWindow    *pnlSplitter    = new wxSplitterWindow( this , -1);
00054         
00055         int ww,hh;
00056         _MPRWidget2                                     = new wxMPRWidget2(pnlSplitter,_marimageData,voxelSize);
00057         wxPanel *       contour3DView   = Create3DViewContour( pnlSplitter , _MPRWidget2->GetVtkMPRBaseData());
00058         this->GetSize(&ww,&hh);
00059 
00060     pnlSplitter -> SplitVertically( _MPRWidget2, contour3DView , 600);
00061         wxBoxSizer      *sizer  = new wxBoxSizer(wxVERTICAL  );
00062         sizer           -> Add( pnlSplitter ,1,wxGROW  ,0);
00063         pnlSplitter     -> SetMinimumPaneSize( 50 );
00064         this            -> SetSizer(sizer);
00065         //EEDxx2.4
00066         //      FitInside();
00067         
00068 
00069         
00070         //TEST
00071 
00072 //EED 6 aout 2007
00073 /*
00074         MaracasTools* maracasTools = MaracasTools::GetInstance();
00075         maracasTools->SetMPRWidget(this);
00076         wxFrame* maracasToolsFrame = maracasTools->GetToolbox(this);
00077         maracasToolsFrame->Show();
00078 */
00079         
00080         
00081 
00082 }

wxManualSegmentation_MPRWidget::~wxManualSegmentation_MPRWidget (  ) 

Definition at line 86 of file wxManualSegmentation_MPRWidget.cxx.

References _wxvtk3Dbaseview_Clipping3D_C, _wxvtkclipping3Dview_C, and _wxvtkmpr3Dview_C.

00087 {
00088         if (_wxvtk3Dbaseview_Clipping3D_C       != NULL) { delete       _wxvtk3Dbaseview_Clipping3D_C;  }
00089         if (_wxvtkmpr3Dview_C                           != NULL) { delete       _wxvtkmpr3Dview_C;                              }
00090         if (_wxvtkclipping3Dview_C                      != NULL) { delete       _wxvtkclipping3Dview_C;                 }
00091 }


Member Function Documentation

void wxManualSegmentation_MPRWidget::ConfigureContour (  )  [private]
void wxManualSegmentation_MPRWidget::ConfigureVTK (  ) 

Definition at line 160 of file wxManualSegmentation_MPRWidget.cxx.

References _MPRWidget2, _wxvtk3Dbaseview_Clipping3D_C, _wxvtkclipping3Dview_C, _wxvtkmpr3Dview_C, wxMPRWidget::ConfigureVTK(), wxVtkBaseView::GetInteractorStyleBaseView(), vtkInteractorStyle3DView::SetWxVtkClipping3DView(), and vtkInteractorStyle3DView::SetWxVtkMPR3DView().

Referenced by wxMaracas_ManualSegmentation_MPR::ConfigureVTK().

00160                                                  {
00161         _MPRWidget2->ConfigureVTK();
00162         _wxvtk3Dbaseview_Clipping3D_C   ->  Configure();
00163         _wxvtkmpr3Dview_C                               ->      Configure();
00164         _wxvtkclipping3Dview_C                  ->      Configure();
00165 
00166         vtkInteractorStyle3DView *vtkinteractorstyle3Dview      = new vtkInteractorStyle3DView();
00167         vtkinteractorstyle3Dview->SetWxVtkMPR3DView(_wxvtkmpr3Dview_C);
00168         vtkinteractorstyle3Dview->SetWxVtkClipping3DView(_wxvtkclipping3Dview_C);
00169         _wxvtk3Dbaseview_Clipping3D_C->GetInteractorStyleBaseView()->AddInteractorStyleMaracas( vtkinteractorstyle3Dview );
00170 
00171 }

Here is the call graph for this function:

Here is the caller graph for this function:

wxPanel * wxManualSegmentation_MPRWidget::Create3DViewContour ( wxWindow *  parent,
vtkMPRBaseData vtkmprbasedata 
) [private]

Definition at line 95 of file wxManualSegmentation_MPRWidget.cxx.

References _wxvtk3Dbaseview_Clipping3D_C, _wxvtkclipping3Dview_C, _wxvtkmpr3Dview_C, vtkMPR3DDataViewer::Configure(), vtkClipping3DDataViewer::Configure(), wxVtkMPR3DView::CreateControlPanel(), wxVtkBaseView::GetWxVTKRenderWindowInteractor(), wxVtkClipping3DView::SetVtkClipping3DDataViewer(), wxVtkMPR3DView::SetVtkMPR3DDataViewer(), vtkMPR3DDataViewer::SetVtkMPRBaseData(), and vtkClipping3DDataViewer::SetVtkMPRBaseData().

00096 {
00097         wxWindow *wxwindow;
00098         wxPanel *panel=new wxPanel(parent,-1);
00099 
00100         wxSplitterWindow        *panelClipping3D        = new wxSplitterWindow( panel , -1);
00101         _wxvtk3Dbaseview_Clipping3D_C = new wxVtk3DBaseView( panelClipping3D );
00102 
00103         _wxvtkclipping3Dview_C = new wxVtkClipping3DView(_wxvtk3Dbaseview_Clipping3D_C);
00104         vtkClipping3DDataViewer *vtkclipping3Ddataviewer = new vtkClipping3DDataViewer(); 
00105         vtkclipping3Ddataviewer->SetVtkMPRBaseData(vtkmprbasedata);
00106         vtkclipping3Ddataviewer->Configure();
00107         _wxvtkclipping3Dview_C->SetVtkClipping3DDataViewer(vtkclipping3Ddataviewer);
00108 
00109         _wxvtkmpr3Dview_C = new wxVtkMPR3DView( _wxvtk3Dbaseview_Clipping3D_C );
00110         vtkMPR3DDataViewer *vtkmpr3Ddataviewer = new vtkMPR3DDataViewer(); 
00111         vtkmpr3Ddataviewer->SetVtkMPRBaseData(vtkmprbasedata);
00112         vtkmpr3Ddataviewer->Configure();
00113         _wxvtkmpr3Dview_C->SetVtkMPR3DDataViewer(vtkmpr3Ddataviewer);
00114 
00115         wxWindow        *window3D                               = _wxvtk3Dbaseview_Clipping3D_C->GetWxVTKRenderWindowInteractor();
00116 
00117         wxPanel         *panelControl                   = new wxPanel(panelClipping3D,-1);      
00118         wxPanel         *controlPanelMPR3D              = _wxvtkmpr3Dview_C->CreateControlPanel(panelControl);
00119         wxPanel         *controlPanelClipping3D = _wxvtkclipping3Dview_C->CreateControlPanel(panelControl);
00120 
00121 //      wxBoxSizer  *sizerCtrol             = new wxBoxSizer(wxVERTICAL);
00122         wxFlexGridSizer  *sizerCtrol        = new wxFlexGridSizer(1);
00123 
00124         sizerCtrol->Add(controlPanelMPR3D , 1, wxALL|wxEXPAND, 2);
00125         sizerCtrol->Add(controlPanelClipping3D , 1, wxALL|wxEXPAND, 2);
00126         panelControl->SetAutoLayout(true);
00127         panelControl->SetSizer(sizerCtrol);
00128         panelControl->SetSize(400,350);
00129         panelControl->Layout();
00130 
00131         int ww,hh;
00132         wxWindow *pp=this;
00133         while (pp->GetParent()!=NULL) pp=pp->GetParent();
00134         pp->GetSize(&ww,&hh);
00135 
00136 //EEDxx2.4
00137 //              panelClipping3D -> SetMinimumPaneSize( -50 );
00138         panelClipping3D -> SplitHorizontally( panelControl,window3D, (int)(hh*0.20) );
00139         wxwindow=panelClipping3D;
00140 
00141     wxBoxSizer *sizerH1 = new wxBoxSizer(wxHORIZONTAL);
00142         sizerH1->Add(wxwindow , 1, wxALL|wxEXPAND, 0);
00143         panel->SetAutoLayout(true);
00144         panel->SetSizer(sizerH1);
00145         panel->SetSize(400,400);
00146         panel->Layout();
00147 
00148 //EEDxx2.4
00149 //      panel->FitInside();
00150 //      FitInside();
00151 
00152 
00153 
00154 
00155         return panel;
00156 }

Here is the call graph for this function:

wxManualSegmentation_MPRWidget::DECLARE_EVENT_TABLE (  )  [private]
vtkRenderer * wxManualSegmentation_MPRWidget::GetRenderer (  ) 

Definition at line 197 of file wxManualSegmentation_MPRWidget.cxx.

References _wxvtkmpr3Dview_C, wxVtk3DBaseView::GetRenderer(), and wxVtkMPR3DView::GetWxvtk3Dbaseview().

00197                                                         {
00198         return _wxvtkmpr3Dview_C->GetWxvtk3Dbaseview()->GetRenderer();
00199 }

Here is the call graph for this function:

vtkMPRBaseData * wxManualSegmentation_MPRWidget::GetVtkMPRBaseData (  ) 

Definition at line 174 of file wxManualSegmentation_MPRWidget.cxx.

References _MPRWidget2, and wxMPRWidget::GetVtkMPRBaseData().

Referenced by wxMaracas_ManualSegmentation_MPR::GetVtkMPRBaseData().

00174                                                                   {
00175         return _MPRWidget2->GetVtkMPRBaseData();
00176 }

Here is the call graph for this function:

Here is the caller graph for this function:

vtkPlane2DView * wxManualSegmentation_MPRWidget::GetVtkPlane2DView (  ) 

Definition at line 178 of file wxManualSegmentation_MPRWidget.cxx.

References _MPRWidget2, and wxMPRWidget::GetVtkPlane2DView().

Referenced by wxMaracas_ManualSegmentation_MPR::GetVtkPlane2DView().

00179 {
00180         return _MPRWidget2->GetVtkPlane2DView();
00181 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxManualSegmentation_MPRWidget::OnRefreshView ( wxCommandEvent &  event  ) 

Definition at line 183 of file wxManualSegmentation_MPRWidget.cxx.

References RefreshView().

00184 {
00185         RefreshView();
00186 }

Here is the call graph for this function:

void wxManualSegmentation_MPRWidget::RefreshView (  ) 

Definition at line 188 of file wxManualSegmentation_MPRWidget.cxx.

References _MPRWidget2, _wxvtk3Dbaseview_Clipping3D_C, _wxvtkclipping3Dview_C, _wxvtkmpr3Dview_C, and wxMPRWidget::RefreshView().

Referenced by OnRefreshView().

00189 {
00190         this->_MPRWidget2->RefreshView();
00191         _wxvtkmpr3Dview_C                               -> RefreshView();
00192         _wxvtkclipping3Dview_C                  -> Refresh();
00193         _wxvtk3Dbaseview_Clipping3D_C   -> Refresh();
00194 }

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

Definition at line 55 of file wxManualSegmentation_MPRWidget.h.

Definition at line 54 of file wxManualSegmentation_MPRWidget.h.


The documentation for this class was generated from the following files:

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1