X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk%2Fsrc%2FbbmaracasvisuContourVOI.cxx;h=dfb620215e184217e8afe8316abda565e10ecfb4;hb=965c602117e9de99019d49bd78ca1d707a1a6bd2;hp=c37ceb89962bdebdc574f5c14f69486b92a85fea;hpb=a9d9fb67805b906ffb5912f56eae5578a7c432ca;p=creaMaracasVisu.git diff --git a/bbtk/src/bbmaracasvisuContourVOI.cxx b/bbtk/src/bbmaracasvisuContourVOI.cxx index c37ceb8..dfb6202 100644 --- a/bbtk/src/bbmaracasvisuContourVOI.cxx +++ b/bbtk/src/bbmaracasvisuContourVOI.cxx @@ -22,6 +22,14 @@ END_EVENT_TABLE( ); { // 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); @@ -32,28 +40,34 @@ END_EVENT_TABLE( ); } + void wxWidgetVOI::initializeVOIWidget(){ + wxSizer* sizer = this->GetSizer(); - void wxWidgetVOI::setBaseView(wxVtkBaseView * wxvtkbaseview){ - this->wxvtkbaseview = wxvtkbaseview; - } - void wxWidgetVOI::setImageData(vtkImageData * imagedata){ - this->imagedata = imagedata; - } + + if(mcontourvoiwidget!=NULL){ + sizer->Remove( mcontourvoiwidget ); + mcontourvoiwidget->Destroy(); + } - void 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(); +// wxwidget = new wxMPRWidget2( panel, marimagedata , 1 ); +// wxwidget->ConfigureVTK(); + this->Refresh(); } + + void wxWidgetVOI::setBaseView(wxVtkBaseView * wxvtkbaseview){ + this->wxvtkbaseview = wxvtkbaseview; + } + void wxWidgetVOI::setImageData(vtkImageData * imagedata){ + this->imagedata = imagedata; + } + + //-------------------------------------------------------------------------- wxWidgetVOI::~wxWidgetVOI() { @@ -126,7 +140,7 @@ void ContourVOI::Process() wxWidgetVOI* wxwidgetvoi = (wxWidgetVOI*)bbGetOutputWidget(); - if(base !=NULL && img != NULL && _img != img && _base != base){ + if(base !=NULL && img != NULL && _img != img){ _img = img; _base = base; @@ -137,7 +151,7 @@ void ContourVOI::Process() } - if (wxwidgetvoi!=NULL){ + if (wxwidgetvoi!=NULL && _img!=NULL && _base != NULL){ ContourVOIWidget* contourvoiwidget = wxwidgetvoi->GetContourVOIWidget(); int voi[6]; @@ -150,6 +164,21 @@ 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 ); } @@ -169,30 +198,34 @@ void ContourVOI::CreateWidget(wxWindow* parent) } //------------------------------------------------------ -void ContourVOI::bbUserConstructor() +void ContourVOI::bbUserSetDefaultValues() { _img = NULL; _base = NULL; + _extract =NULL; bbSetInputwxVtkBaseView(NULL); bbSetInputIn(NULL); bbSetOutputWidget(NULL); + bbSetOutputVOI(NULL); -} - -//------------------------------------------------------ -void ContourVOI::bbUserCopyConstructor(bbtk::BlackBox::Pointer) -{ - _img = NULL; - _base = NULL; - -} + bbSetInputIn(NULL); + bbSetInputwxVtkBaseView(NULL); -//------------------------------------------------------ -void ContourVOI::bbUserDestructor() -{ } + //----------------------------------------------------------------- + void ContourVOI::bbUserInitializeProcessing() + { + } + + //----------------------------------------------------------------- + void ContourVOI::bbUserFinalizeProcessing() + { + } + + //----------------------------------------------------------------- + } // EO namespace bbcreaMaracasVisu