X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk%2Fsrc%2FbbmaracasvisuContourVOI.cxx;h=8ba853d224d780da7fe5edf9d817861ecbf5f64f;hb=46e997508c80de816d3e26f9ccdb4a5e6d68a5f9;hp=1717fcc1275b6ee366e11b2e6560e023215751c3;hpb=393855ac9ccdd47bc738cc7c0af199b2b45d89db;p=creaMaracasVisu.git diff --git a/bbtk/src/bbmaracasvisuContourVOI.cxx b/bbtk/src/bbmaracasvisuContourVOI.cxx index 1717fcc..8ba853d 100644 --- a/bbtk/src/bbmaracasvisuContourVOI.cxx +++ b/bbtk/src/bbmaracasvisuContourVOI.cxx @@ -3,6 +3,9 @@ #include "bbmaracasvisuContourVOI.h" #include "bbcreaMaracasVisuPackage.h" + + + namespace bbcreaMaracasVisu { @@ -20,40 +23,50 @@ END_EVENT_TABLE( ); wxWidgetVOI::wxWidgetVOI(wxWindow* parent, wxVtkBaseView *wxvtkbaseview, vtkImageData *imagedata) : wxPanel( parent, -1 ) { - wxPanel *panel = this; +// wxPanel *panel = this; + + wxFlexGridSizer *sizer=new wxFlexGridSizer(1); + sizer -> AddGrowableCol(0); + this -> SetSizer(sizer); + this -> SetAutoLayout(true); + this->wxvtkbaseview = NULL; + mcontourvoiwidget=NULL; if(wxvtkbaseview!=NULL&&imagedata!=NULL){ setBaseView(wxvtkbaseview); setImageData(imagedata); initializeVOIWidget(); + } + } + void wxWidgetVOI::initializeVOIWidget(){ + wxSizer* sizer = this->GetSizer(); + +/// \TODO fix deprecated warning: virtual bool wxSizer::Remove(wxWindow*) is deprecated (declared at /usr/include/wx-2.8/wx/sizer.h:513) + if(mcontourvoiwidget!=NULL){ + sizer->Remove( mcontourvoiwidget ); + mcontourvoiwidget->Destroy(); } - + mcontourvoiwidget = new ContourVOIWidget( this, wxvtkbaseview, imagedata ); + mcontourvoiwidget->ConfigureVTK(); + + sizer -> Add( mcontourvoiwidget,1,wxGROW ); +// wxwidget = new wxMPRWidget2( panel, marimagedata , 1 ); +// wxwidget->ConfigureVTK(); + + this->Refresh(); } - wxWidgetVOI::setBaseView(wxVtkBaseView * wxvtkbaseview){ + void wxWidgetVOI::setBaseView(wxVtkBaseView * wxvtkbaseview){ this->wxvtkbaseview = wxvtkbaseview; } - wxWidgetVOI::setImageData(vtkImageData * imagedata){ + void wxWidgetVOI::setImageData(vtkImageData * imagedata){ this->imagedata = imagedata; } - wxWidgetVOI::initializeVOIWidget(){ - mcontourvoiwidget = new ContourVOIWidget( this, wxvtkbaseview, imagedata ); - mcontourvoiwidget->ConfigureVTK(); - -// wxwidget = new wxMPRWidget2( panel, marimagedata , 1 ); -// wxwidget->ConfigureVTK(); - wxFlexGridSizer *sizer=new wxFlexGridSizer(1); - sizer -> Add( mcontourvoiwidget,1,wxGROW ); - sizer -> AddGrowableCol(0); - this -> SetSizer(sizer); - this -> SetAutoLayout(true); - this -> Layout(); - this->Refresh(); - } + //-------------------------------------------------------------------------- wxWidgetVOI::~wxWidgetVOI() { @@ -62,7 +75,6 @@ END_EVENT_TABLE( ); //-------------------------------------------------------------------------- void wxWidgetVOI::Refresh() { - printf("EED wxWidgetVOI::Refresh \n"); // wxwidget->RefreshView(); } @@ -72,7 +84,6 @@ END_EVENT_TABLE( ); //--------------- void wxWidgetVOI::OnRefreshView(wxCommandEvent &event) { - printf("EED wxWidgetVOI::OnRefreshView \n"); /* if((wxwidget!=NULL) && (mbbViewerMPR!=NULL)) { @@ -90,7 +101,6 @@ END_EVENT_TABLE( ); //-------------------------------------------------------------------------- void wxWidgetVOI::OnDClickLeft(wxCommandEvent & event) { - printf("EED wxWidgetVOI::OnDClickLeft \n"); // wxwidget->RefreshView(); } @@ -123,13 +133,12 @@ void ContourVOI::Process() wxMessageDialog(NULL, bbtk::std2wx("(ContourVOI) Input 'In' is not set"), bbtk::std2wx(bbGetFullName()) ).ShowModal(); }*/ - vtkImageData* img = bbGetInputIn(); wxVtkBaseView* base = bbGetInputwxVtkBaseView(); wxWidgetVOI* wxwidgetvoi = (wxWidgetVOI*)bbGetOutputWidget(); - if(base !=NULL && img != NULL && _img != img && _base != base){ + if(base !=NULL && img != NULL && _img != img){ _img = img; _base = base; @@ -139,8 +148,7 @@ void ContourVOI::Process() wxwidgetvoi->initializeVOIWidget(); } - - if (wxwidgetvoi!=NULL){ + if (wxwidgetvoi!=NULL && _img!=NULL && _base != NULL){ ContourVOIWidget* contourvoiwidget = wxwidgetvoi->GetContourVOIWidget(); int voi[6]; @@ -153,10 +161,26 @@ void ContourVOI::Process() std::cout<<"ContourVOI index "<Delete(); + } + _extract = vtkExtractVOI::New(); + _extract->RemoveAllInputs(); + _extract->SetInput(img); + _extract->SetVOI(voi); + _extract->UpdateWholeExtent(); + _extract->Update(); + bbSetOutputVOI(_extract->GetOutput()); + //JCP + */ + bbSetOutputIndex( Index ); bbSetOutputSize( Size ); } - } //------------------------------------------------------ @@ -172,32 +196,32 @@ void ContourVOI::CreateWidget(wxWindow* parent) } //------------------------------------------------------ -void ContourVOI::bbUserConstructor() +void ContourVOI::bbUserSetDefaultValues() { - _img = NULL; _base = NULL; +//EED 20Juin2011 _extract =NULL; bbSetInputwxVtkBaseView(NULL); bbSetInputIn(NULL); bbSetOutputWidget(NULL); + bbSetOutputVOI(NULL); + + bbSetInputIn(NULL); + bbSetInputwxVtkBaseView(NULL); } -//------------------------------------------------------ -void ContourVOI::bbUserCopyConstructor(bbtk::BlackBox::Pointer) +//----------------------------------------------------------------- +void ContourVOI::bbUserInitializeProcessing() { - _img = NULL; - _base = NULL; - } - -//------------------------------------------------------ -void ContourVOI::bbUserDestructor() + +//----------------------------------------------------------------- +void ContourVOI::bbUserFinalizeProcessing() { } - - + +//----------------------------------------------------------------- + } // EO namespace bbcreaMaracasVisu - -