X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FmanualPaint%2FFillFilter.cpp;h=1e2c470fee85473a3fc10f8a6c307dee1e517e8c;hb=e263b7ace0f53d647a731553a3f67700838ad146;hp=8210bec46e5199ab49af3d6662136d626e43d62c;hpb=228dd2fe51b414e56427b93a1d99a35e568c7033;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/FillFilter.cpp b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/FillFilter.cpp index 8210bec..1e2c470 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/FillFilter.cpp +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/FillFilter.cpp @@ -49,7 +49,9 @@ FillFilter::~FillFilter() //--------------------------------------------------------------------------- void FillFilter::SetImages(vtkImageData *image,vtkImageData *image2) // virtual { - baseFilterManualPaint::SetImages(image,image2); + + + baseFilterManualPaint::SetImages(image,image2); if ((_maxX!=_maxXback) || (_maxY!=_maxYback) || (_maxZ!=_maxZback)) { @@ -61,15 +63,20 @@ void FillFilter::SetImages(vtkImageData *image,vtkImageData *image2) // virtual _auxImageFill->SetDimensions(_maxX + 1, _maxY + 1, _maxZ + 1); _auxImageFill->SetOrigin(0, 0, 0); _auxImageFill->SetExtent(0, _maxX, 0, _maxY, 0, _maxZ); +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 _auxImageFill->SetWholeExtent(0, _maxX, 0, _maxY, 0, _maxZ); _auxImageFill->SetScalarTypeToUnsignedChar(); _auxImageFill->AllocateScalars(); +#else + _auxImageFill->AllocateScalars(VTK_UNSIGNED_CHAR,1); +#endif _ptrAuxImageFill = (unsigned char *)_auxImageFill->GetScalarPointer(); memset(_ptrAuxImageFill, 0, (_maxX+1) * (_maxY+1) * (_maxZ+1) ); } _maxXback=_maxX; _maxYback=_maxY; - _maxYback=_maxZ; + _maxZback=_maxZ; } @@ -89,7 +96,15 @@ void FillFilter::Run() // virtual _countRecursiveFillProblem = 0; _countProgressingFill = 0; _usingAuxImageFill = false; + ivi = _px + _py*(_maxX+1) + _pz*(_maxX+1)*(_maxY+1); // index vector image + + +DEF_POINTER_IMAGE_VTK_CREA_set(v_image,ss_image,p_image,st_image,_image) +DEF_POINTER_IMAGE_VTK_CREA_set(v_image2,ss_image2,p_image2,st_image2,_image2) + + + //EED01 // FillToolRecursive(_px, _py, _pz); FillToolRecursive(_px, _py, _pz, ivi); @@ -126,8 +141,8 @@ void FillFilter::Run() // virtual //--------------------------------------------------------------------------- void FillFilter::FillToolRecursive(int px, int py, int pz,long int ivi) { -DEF_POINTER_IMAGE_VTK_CREA(v_image,ss_image,p_image,st_image,_image) -DEF_POINTER_IMAGE_VTK_CREA(v_image2,ss_image2,p_image2,st_image2,_image2) +//ups ??EED DEF_POINTER_IMAGE_VTK_CREA(v_image,ss_image,p_image,st_image,_image) +//ups ??EED DEF_POINTER_IMAGE_VTK_CREA(v_image2,ss_image2,p_image2,st_image2,_image2) _countRecursiveFill++; _countProgressingFill++; @@ -142,14 +157,18 @@ DEF_POINTER_IMAGE_VTK_CREA(v_image2,ss_image2,p_image2,st_image2,_image2) { if (_usingAuxImageFill == true) { - this->_IMManager->AddModifiedPixel(px, py, pz); //DFCH +//UPS ??EED this->_IMManager->AddModifiedPixel(px, py, pz); //DFCH //EED01 // _auxImageFill->SetScalarComponentFromFloat(px, py, pz, 0, 0); _ptrAuxImageFill[ ivi ]=0; } - _tmpDistfill = (px-_pxfill)*(px-_pxfill) - + (py-_pyfill)*(py-_pyfill) - + (pz-_pzfill)*(pz-_pzfill); + difX=px-_pxfill; + difY=py-_pyfill; + difZ=pz-_pzfill; + _tmpDistfill = difX*difX + difY*difY + difZ*difZ; +// _tmpDistfill = (px-_pxfill)*(px-_pxfill) +// + (py-_pyfill)*(py-_pyfill) +// + (pz-_pzfill)*(pz-_pzfill); //if (_countRecursiveFill >1 ) //{ @@ -210,7 +229,7 @@ GETVALUE2_VTK_CREA(_tmpiglfill2,p_image2,st_image2,ivi) if (_auxGrayLevelValidationFill == true) { - this->_IMManager->AddModifiedPixel(px, py, pz); //DFCH +//UPS ??EED this->_IMManager->AddModifiedPixel(px, py, pz); //DFCH if (_image2!=NULL) { //EED01