//-------------------------------------------------------------------
//-------------------------------------------------------------------
//-------------------------------------------------------------------
-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 );
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 );
joinMarchingCubes = NULL;
joinMapper = NULL;
joinActor = NULL;
-printf("EED wxSTLWidget_03::wxSTLWidget_03 03\n");
}
// 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;
//-------------------------------------------------------------------
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);
panel->SetSize(400,600);
panel->Layout();
-printf("EED wxSTLWidget_03::CreateControlPanel 07\n");
return panel;
}
//------------------------------------------------------------------------
{
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);
}
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( ) );
//------------------------------------------------------------------------
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( ) );
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( );
}
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;
}
//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( );
}