X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=packages%2Fvtk%2Fsrc%2FbbvtkSegmentationConnectivity.cxx;h=1f2758ead003fea3faa4a506297d3f0e9a154968;hb=9bf93d26c92029689cb5da02822edb68d5835864;hp=3b28389b314c7ba907561d6707610220205a9f43;hpb=5e45ba6586eff364b295a5477d7af4d44af83a7e;p=bbtk.git diff --git a/packages/vtk/src/bbvtkSegmentationConnectivity.cxx b/packages/vtk/src/bbvtkSegmentationConnectivity.cxx index 3b28389..1f2758e 100644 --- a/packages/vtk/src/bbvtkSegmentationConnectivity.cxx +++ b/packages/vtk/src/bbvtkSegmentationConnectivity.cxx @@ -59,7 +59,6 @@ namespace bbvtk // cast2 = NULL; connect2 = NULL; cast4 = NULL; - bbSetInputIn(NULL); std::vector position; position.push_back(0); @@ -71,53 +70,37 @@ namespace bbvtk threshold.push_back(0); bbSetInputThresholdMinMax(threshold); bbSetOutputOut(NULL); - bbSetInputOutputFormat("SAME"); bbSetInputValue(255); - - } -// -------------------------------------------------------------- - +// -------------------------------------------------------------- void SegmentationConnectivity::bbUserInitializeProcessing() { - - thresh2 = vtkImageThreshold::New(); - thresh2->SetInValue(255); - thresh2->SetOutputScalarTypeToUnsignedChar(); - connect2 = vtkImageSeedConnectivity::New(); - connect2->SetInput(thresh2->GetOutput()); - connect2->SetInputConnectValue(255); - connect2->SetOutputConnectedValue( 255 ); - connect2->SetOutputUnconnectedValue(0); - cast4 = vtkImageCast::New(); - cast4->SetInput(connect2->GetOutput()); - -// EED 2016 06 15 - -/* thresh2 = vtkImageThreshold::New(); - thresh2->SetInValue(255); - thresh2->SetOutputScalarTypeToUnsignedShort(); - thresh2->SetOutValue(0); - cast2 = vtkImageCast::New(); - cast2->SetInput(thresh2->GetOutput()); - cast2->SetOutputScalarTypeToUnsignedChar(); + thresh2->SetInValue(255); + thresh2->SetOutValue(0); + thresh2->SetOutputScalarTypeToUnsignedChar(); connect2 = vtkImageSeedConnectivity::New(); - connect2->SetInput(cast2->GetOutput()); - connect2->SetInputConnectValue(255); - connect2->SetOutputConnectedValue(255); - connect2->SetOutputUnconnectedValue(0); +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 + connect2->SetInput(thresh2->GetOutput()); +#else + connect2->SetInputData(thresh2->GetOutput()); +#endif + connect2->SetInputConnectValue(255); + connect2->SetOutputConnectedValue( 255 ); + connect2->SetOutputUnconnectedValue(0); cast4 = vtkImageCast::New(); - cast4->SetInput(connect2->GetOutput()); - cast4->SetOutputScalarTypeToUnsignedShort(); -*/ - +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 + cast4->SetInput(connect2->GetOutput()); +#else + cast4->SetInputData(connect2->GetOutput()); +#endif } -// -------------------------------------------------------------- - +// -------------------------------------------------------------- void SegmentationConnectivity::bbUserFinalizeProcessing() { if (thresh2!=NULL) @@ -142,14 +125,9 @@ namespace bbvtk } } - - - // -------------------------------------------------------------- - void SegmentationConnectivity::DoProcess() { - int x,y,z; int i,numPoints = bbGetInputPositionXYZ().size()/3; int verif = (bbGetInputPositionXYZ().size()-1) % 3; @@ -157,22 +135,29 @@ namespace bbvtk { int outputformat = bbtkStaticLecture::GetTypeFormat( bbGetInputOutputFormat() , bbGetInputIn() ); vtkImageData *imagedata = bbGetInputIn(); +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 imagedata->UpdateInformation(); imagedata->SetUpdateExtent(imagedata->GetWholeExtent()); imagedata->Update(); - thresh2->ThresholdBetween(3000, 3001); thresh2->SetInput(imagedata); +#else +// imagedata->SetExtent(imagedata->GetExtent()); + thresh2->SetInputData(imagedata); +#endif thresh2->ThresholdBetween(bbGetInputThresholdMinMax()[0], bbGetInputThresholdMinMax()[1]); - thresh2->Modified(); thresh2->Update(); connect2->RemoveAllSeeds (); - int ext[6]; +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 imagedata->GetWholeExtent(ext); +#else + imagedata->GetExtent(ext); +#endif int maxX = ext[1]-ext[0]+1; int maxY = ext[3]-ext[2]+1; int maxZ = ext[5]-ext[4]+1; - for (i=0;iAddSeed( x,y,z ); } else { - printf("EED WARNNIG! In box: SegmentationConnectivity point out of range \n"); + printf("EED WARNNIG! In box: SegmentationConnectivity points list out of range \n"); } // if point inside image - } // for i connect2->SetOutputConnectedValue( bbGetInputValue() ); cast4->SetOutputScalarType( outputformat ); @@ -196,9 +180,7 @@ namespace bbvtk printf("EED WARNNIG! In box: SegmentationConnectivity List of points are not coherent. \n"); bbSetOutputOut( NULL ); }// if numPoints verif - } - }// EO namespace bbvtk