]> Creatis software - creaMaracasVisu.git/commitdiff
#3252 creaMaracasVisu Bug New Normal - manual paint filter fill bug setimages
authorEduardo DAVILA <davila@localhost.localdomain>
Mon, 8 Jul 2019 07:49:41 +0000 (09:49 +0200)
committerEduardo DAVILA <davila@localhost.localdomain>
Mon, 8 Jul 2019 07:49:41 +0000 (09:49 +0200)
bbtk/src/bbcreaMaracasVisuManualPaint_Model.cxx
lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/FillFilter.cpp
lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/ManualPaintModel.cpp
lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR3DView.cxx

index e97b39033a1cbc0bca71a1c5829bbbdd25e8c775..856a509587e02650d95d5e00199a78336d7c5807 100644 (file)
@@ -34,10 +34,8 @@ void ManualPaint_Model::Process()
 //    bbSetOutputOut( bbGetInputIn() );
 //    std::cout << "Output value = " <<bbGetOutputOut() << std::endl;
 
-
        if (bbGetInputImage()!=NULL)
        {  
-
                manualpaintmodel->SetActive( bbGetInputActive() );
                manualpaintmodel->SetTool( bbGetInputTool() );
                manualpaintmodel->Set2D3D( bbGetInput2D3D() );
@@ -50,14 +48,10 @@ void ManualPaint_Model::Process()
                manualpaintmodel->SetDistanceFill( bbGetInputDistanceFill() );          
                manualpaintmodel->SetRangeMin( bbGetInputRange()[0] );
                manualpaintmodel->SetRangeMax( bbGetInputRange()[1] );
-
                if (bbGetInputPoint().size()==3)
                {
                        manualpaintmodel->PaintImage( bbGetInputPoint()[0] , bbGetInputPoint()[1] , bbGetInputPoint()[2] );
                } // if Points
-
-
-
                if ( bbGetInputByLstPointsX().size()!=0 )
                {
                        int i,size = bbGetInputByLstPointsX().size();
@@ -66,8 +60,7 @@ void ManualPaint_Model::Process()
                                manualpaintmodel->PaintImage( bbGetInputByLstPointsX()[i] , bbGetInputByLstPointsY()[i] , bbGetInputByLstPointsZ()[i] );
                        } // for
                }// if ByLstPointsX
-               
-               if (bbGetInputByImagePoints()!=NULL)
+               if ((bbGetInputByImagePoints()!=NULL) && (bbGetInputImage2()!=NULL) )
                {
 //                     int ia,ja,ka;
 //                     int ii,jj,kk;
@@ -78,16 +71,12 @@ void ManualPaint_Model::Process()
 #else
                        bbGetInputByImagePoints()->GetExtent(ext);
 #endif
-
                        int dimX=ext[1]-ext[0]+1;
                        int dimY=ext[3]-ext[2]+1;
                        int dimZ=ext[5]-ext[4]+1;
-
                        DEF_POINTER_IMAGE_VTK_CREA(vBIP,sSBIP,pBIP,sTBIP,bbGetInputByImagePoints());
                        DEF_POINTER_IMAGE_VTK_CREA(vI2,sSI2,pI2,sTI2,bbGetInputImage2());
-
 //#pragma omp parallel for
-
                        int i,j,k;
                        for (k=0;k<dimZ;k++) 
                        {
@@ -113,16 +102,11 @@ void ManualPaint_Model::Process()
                                        }// for i
                                }// for j
                        }// for k
-
                        printf("ManualPaint_Model %d%\n", 100 );
                } // if ByImagePoints
-
-
-
         } else {
-               printf("EED Warning: Image not set. Box creaMaracasVisu::ManualPaint_Model (BBTK) \n");
-       } // if bbGetInputImage()
-
+               printf("EED Warning: ByImagePoints or Image2 not set.  Box creaMaracasVisu::ManualPaint_Model (BBTK) \n");
+       } // if ((bbGetInputByImagePoints()!=NULL) && (bbGetInputImage2()!=NULL) )
 
        if (bbGetInputImage2()!=NULL)
        { 
@@ -132,7 +116,6 @@ void ManualPaint_Model::Process()
        } else { 
                bbSetOutputOut( NULL );
        } 
-
 }
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
@@ -144,30 +127,26 @@ void ManualPaint_Model::bbUserSetDefaultValues()
 //    Here we initialize the input 'In' to 0
 
        bbSetInputActive(true);
-       bbSetInputTool(1);  // Paint
-       bbSetInput2D3D(1);  // 3D
+       bbSetInputTool(1);              // Paint
+       bbSetInput2D3D(1);              // 3D
        bbSetInputImage(NULL);
        bbSetInputImage2(NULL);
        bbSetInputGrayLevel(100);
-       bbSetInputDirection(2); // XY
+       bbSetInputDirection(2);         // XY
        bbSetInputBrushSize(3);
-       bbSetInputBrushForm(1); // sphere
+       bbSetInputBrushForm(1);         // sphere
        bbSetInputToleranceFill(50);
        bbSetInputDistanceFill(25);
-
        std::vector<int> point;
        point.push_back(0);
        point.push_back(0);
        point.push_back(0);
        bbSetInputPoint(point);
-
        std::vector<double> range;
        range.push_back(0);
        range.push_back(200);
        bbSetInputRange(range);
-
        bbSetInputByImagePoints(NULL);
-  
 }
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
index 1e2c470fee85473a3fc10f8a6c307dee1e517e8c..fa5510bc2f35a8b1936ebc84b949e665b6810f12 100644 (file)
@@ -48,11 +48,8 @@ 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)) 
        {
                if (_auxImageFill != NULL)
@@ -99,20 +96,20 @@ void FillFilter::Run() // virtual
 
                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)          
-
-
+if (_image2!=NULL)
+{
+       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);
-
                unsigned char *pImage;
                pImage                                          = (unsigned char *) _auxImageFill->GetScalarPointer();
                int ii, jj, kk;
                ivi                                                     = 0;
+
                while (_countRecursiveFillProblem != 0) 
                {
                        _countRecursiveFillProblem  = 0;
index fd71dd68ae66cf647bd8f9afcefa8facd33c466e..feae5d5b8c3d293f5cbd829b1e35ad621f44ce46 100644 (file)
@@ -25,7 +25,8 @@
 
 #include "ManualPaintModel.h"
 
-ManualPaintModel::ManualPaintModel() {
+ManualPaintModel::ManualPaintModel() 
+{
        _active         = true;
        _tool           = 0; // 0 pencil         ,   1 fill
        _brushfilter    = new BrushFilter();
index 3703011e6b5c35dbfc04b34c2d52cf076a99ff3c..237725698d51baef628b8c16cabfbef3e7cab672 100644 (file)
@@ -142,14 +142,17 @@ wxVtkMPR3DView::wxVtkMPR3DView( wxVtk3DBaseView *wxvtk3Dbaseview )
 wxVtkMPR3DView::~wxVtkMPR3DView()
 {
        VisiblePointWidget( false );
-       VisiblePlaneWidget( false );
-       if(_pointWidget!=NULL){
+//     VisiblePlaneWidget( false );
+       if(_pointWidget!=NULL)
+       {
                _pointWidget->Delete();
        }
-       if(_planeWidget!=NULL){
+       if(_planeWidget!=NULL)
+       {
                _planeWidget->Delete();
        }
-       if(_vtkplane!=NULL){
+       if(_vtkplane!=NULL)
+       {
                _vtkplane->Delete();
                _probe->Delete();
                _contourMapper->Delete();
@@ -458,7 +461,7 @@ void wxVtkMPR3DView::FreePlaneInteraction(bool ok)
                        _planeWidgetY->InteractionOff();
                        _planeWidgetZ->InteractionOff();
                }
-       } // if _planeWidgetX
+       } // if _planeWidgetXVisiblePointWidget
 }