X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxSTLWidget_03.cxx;h=edfe3f3004da62d269e0faf7fc9c4ef49cc27a29;hb=4443a8fe2b4992b6abee8531917fd0803018fc12;hp=1afdbfb21c71739b3d04cfa34d040339fe354eb0;hpb=c5feadbb145eecf6d73f793535b7e23eb18db2cb;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxSTLWidget_03.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxSTLWidget_03.cxx index 1afdbfb..edfe3f3 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxSTLWidget_03.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxSTLWidget_03.cxx @@ -62,17 +62,17 @@ //------------------------------------------------------------------- //------------------------------------------------------------------- //------------------------------------------------------------------- -wxSTLWidget_03::wxSTLWidget_03(wxWindow *parent, marInterface* mar) +wxSTLWidget_03::wxSTLWidget_03(wxWindow *parent)//, marInterface* mar) : wxPanel( parent, -1) { _wxMaracasMPR = NULL; _maxSize = 2000; _minSize = 300; - + _imagedata = NULL; _stlMarchingCubesLevel = 128; _stlDeltaGaussLevel = 100; - _mar=new marInterface(); + /*_mar=new marInterface(); _mar->_parameters->setRescaleSlope( mar->_parameters->getRescaleSlope() ); _mar->_parameters->setRescaleIntercept( mar->_parameters->getRescaleIntercept() ); _mar->_parameters->setIntParam( marParameters::e_voxel_type, marParameters::VOX_TYPE_MINIMUM ); @@ -83,15 +83,13 @@ wxSTLWidget_03::wxSTLWidget_03(wxWindow *parent, marInterface* mar) mar->_experiment->getVOI( voi ); _mar->_experiment->setVOI( voi ); _mar->SetDicom(mar->_dicom); - _mar->initExperiment( ); + _mar->initExperiment( );*/ wxBoxSizer *sizer = new wxBoxSizer(wxVERTICAL ); wxSplitterWindow *pnlSplitter = new wxSplitterWindow( this , -1); wxPanel *viewPanel = CreateViewPanel(pnlSplitter); -printf("EED wxSTLWidget_03::wxSTLWidget_03 01\n"); wxPanel *controlPanel = CreateControlPanel(pnlSplitter); -printf("EED wxSTLWidget_03::wxSTLWidget_03 02\n"); sizer -> Add( pnlSplitter ,1,wxGROW ,0); pnlSplitter -> SetMinimumPaneSize( 150 ); @@ -123,7 +121,6 @@ printf("EED wxSTLWidget_03::wxSTLWidget_03 02\n"); joinMarchingCubes = NULL; joinMapper = NULL; joinActor = NULL; -printf("EED wxSTLWidget_03::wxSTLWidget_03 03\n"); } @@ -140,51 +137,54 @@ wxPanel* wxSTLWidget_03::CreateViewPanel(wxWindow *parent) // MPR - vtkImageData *imagedata; - imagedata = _mar->_experiment->getDynData( )->getVolume( )->castVtk(); - imagedata->Update(); -printf("EED wxSTLWidget_03::CreateViewPanel 01 \n"); - _wxMaracasMPR = new wxMaracasMPR( panel, new marImageData(imagedata), _mar->_parameters->getVoxelSize() ); -printf("EED wxSTLWidget_03::CreateViewPanel 02 \n"); + //vtkImageData *imagedata; + //imagedata = _mar->_experiment->getDynData( )->getVolume( )->castVtk(); + //imagedata->Update(); + _wxMaracasMPR = new wxMaracasMPR( panel);//JCP 10-03-2009, new marImageData(imagedata), 1 ); _wxMaracasMPR->ConfigureVTK(); -printf("EED wxSTLWidget_03::CreateViewPanel 03 \n"); sizer->Add( _wxMaracasMPR , 1, wxEXPAND, 0); panel->SetSizer(sizer); panel->SetAutoLayout(true); panel->SetSize(400,400); panel->Layout(); -printf("EED wxSTLWidget_03::CreateViewPanel 04 \n"); return panel; } + +void wxSTLWidget_03::setImage(vtkImageData* img){ + + marImageData* marimagedata = new marImageData(img); + + _wxMaracasMPR->setMarImage(marimagedata, 1); + _wxMaracasMPR->ConfigureVTK(); + this->ConfigureProcessing(marimagedata,0,0,0); + this->ConfigureSTL(); + + _wxMaracasMPR->Refresh(); + + //this->Refresh(); +} //------------------------------------------------------------------- wxWindow* wxSTLWidget_03::CreateSelectAPointPanel(wxWindow *parent) { -printf("EED wxSTLWidget_03::CreateSelectAPointPanel 01\n"); wxPanel *panel = new wxPanel(parent,-1); -printf("EED wxSTLWidget_03::CreateSelectAPointPanel 02\n"); wxFlexGridSizer *sizer = new wxFlexGridSizer(2); -printf("EED wxSTLWidget_03::CreateSelectAPointPanel 03\n"); sizer->Add(new wxStaticText(panel,-1,_T(" "))); sizer->Add(new wxStaticText(panel,-1,_T(" "))); -printf("EED wxSTLWidget_03::CreateSelectAPointPanel 04\n"); sizer->Add(new wxStaticText(panel,-1,_T(" "))); sizer->Add(new wxStaticText(panel,-1,_T(" "))); -printf("EED wxSTLWidget_03::CreateSelectAPointPanel 05\n"); sizer->Add(new wxStaticText(panel,-1,_T(" Select a 3D Point..."))); sizer->Add(new wxStaticText(panel,-1,_T(" "))); -printf("EED wxSTLWidget_03::CreateSelectAPointPanel 06\n"); panel->SetSizer(sizer); panel->SetAutoLayout(true); panel->SetSize(400,600); panel->Layout(); -printf("EED wxSTLWidget_03::CreateSelectAPointPanel 07\n"); return panel; @@ -388,19 +388,13 @@ wxWindow* wxSTLWidget_03::CreateReadSTLFilePanel(wxWindow *parent) //------------------------------------------------------------------- wxPanel* wxSTLWidget_03::CreateControlPanel(wxWindow *parent) { -printf("EED wxSTLWidget_03::CreateControlPanel 01\n"); wxPanel *panel = new wxPanel(parent,-1); wxNotebook *noteBook = new wxNotebook(panel, -1); -printf("EED wxSTLWidget_03::CreateControlPanel 02\n"); noteBook->AddPage(CreateSelectAPointPanel(noteBook),_T("0 ->") ); -printf("EED wxSTLWidget_03::CreateControlPanel 03\n"); noteBook->AddPage(CreateSegmentationPanel(noteBook),_T("1 ->") ); -printf("EED wxSTLWidget_03::CreateControlPanel 04\n"); noteBook->AddPage(CreateSmoothingPanel(noteBook) ,_T("2 ->") ); -printf("EED wxSTLWidget_03::CreateControlPanel 05\n"); noteBook->AddPage(CreateReadSTLFilePanel(noteBook) ,_T("3 " ) ); -printf("EED wxSTLWidget_03::CreateControlPanel 06\n"); noteBook->SetSelection(0); noteBook->SetSize(350,250); wxFlexGridSizer *sizer = new wxFlexGridSizer(2); @@ -410,7 +404,6 @@ printf("EED wxSTLWidget_03::CreateControlPanel 06\n"); panel->SetSize(400,600); panel->Layout(); -printf("EED wxSTLWidget_03::CreateControlPanel 07\n"); return panel; } //------------------------------------------------------------------------ @@ -544,11 +537,11 @@ void wxSTLWidget_03::ConfigureVTK() { wxBusyCursor wait; // vtkImageData *imagedata = _mar->_experiment->getDynData( )->getVolume( )->castVtk(); - marImageData *marimagedata = _mar->_experiment->getDynData( )->GetMarImageData(); + //marImageData *marimagedata;// = _mar->_experiment->getDynData( )->GetMarImageData(); //CONFIGURACION ADICIONAL this->ConfigureSTL(); - this->ConfigureProcessing(marimagedata,0,0,0); + //this->ConfigureProcessing(marimagedata,0,0,0); } @@ -761,8 +754,8 @@ void wxSTLWidget_03:: OnBarMoved_range(wxCommandEvent& event) void wxSTLWidget_03::OnBtnSaveBinaryFile(wxCommandEvent& event) { - wxString dirSTL = _mar->_parameters->getStringParam( - marParameters::e_installation_directory ); + wxString dirSTL;// = _mar->_parameters->getStringParam( + //marParameters::e_installation_directory ); dirSTL = ( dirSTL == _T("NO_DIRECTORY") ) ? wxGetHomeDir( ) : dirSTL; wxFileDialog dialog( this, _T("Choose a directory..."), ( !dirSTL.IsEmpty( ) )? dirSTL: wxGetHomeDir( ) ); @@ -843,8 +836,8 @@ void wxSTLWidget_03::OnBtnSTLFileErase(wxCommandEvent& event) //------------------------------------------------------------------------ void wxSTLWidget_03::OnBtnSTLFileLoad(wxCommandEvent& event) { - wxString dirSTL = _mar->_parameters->getStringParam( - marParameters::e_installation_directory ); + wxString dirSTL;// = _mar->_parameters->getStringParam( + //marParameters::e_installation_directory ); dirSTL = ( dirSTL == _T("NO_DIRECTORY") ) ? wxGetHomeDir( ) : dirSTL; wxFileDialog dialog( this, _T("Choose a directory..."), ( !dirSTL.IsEmpty( ) )? dirSTL: wxGetHomeDir( ) ); @@ -865,8 +858,8 @@ void wxSTLWidget_03::OnBtnSTLFileLoad(wxCommandEvent& event) imgReader->Delete(); } //By default *always* update e_installation_directory: - _mar->_parameters->setStringParam( marParameters::e_installation_directory, dialog.GetPath( ) ); - _mar->saveParameters( ); + //_mar->_parameters->setStringParam( marParameters::e_installation_directory, dialog.GetPath( ) ); + //_mar->saveParameters( ); } @@ -939,8 +932,8 @@ void wxSTLWidget_03::OnOpacitySTLInternal(wxScrollEvent& event){ void wxSTLWidget_03::OnBtnCreateFileSTL(wxCommandEvent& event) { - wxString dirSTL = _mar->_parameters->getStringParam( - marParameters::e_installation_directory ); + wxString dirSTL;// = _mar->_parameters->getStringParam( + //marParameters::e_installation_directory ); dirSTL = ( dirSTL == _T("NO_DIRECTORY") ) ? wxGetHomeDir( ) : dirSTL; @@ -997,8 +990,8 @@ void wxSTLWidget_03::OnBtnCreateFileSTL(wxCommandEvent& event) } //By default *always* update e_installation_directory: - _mar->_parameters->setStringParam( marParameters::e_installation_directory, dialog.GetPath( ) ); - _mar->saveParameters( ); + //_mar->_parameters->setStringParam( marParameters::e_installation_directory, dialog.GetPath( ) ); + //_mar->saveParameters( ); }