//===== // 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) //===== #include "creaVtk_MACROS.h" #include "bbcreaMaracasVisuManualPaint_Model.h" #include "bbcreaMaracasVisuPackage.h" namespace bbcreaMaracasVisu { BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaMaracasVisu,ManualPaint_Model) BBTK_BLACK_BOX_IMPLEMENTATION(ManualPaint_Model,bbtk::AtomicBlackBox); //===== // 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) //===== void ManualPaint_Model::Process() { // THE MAIN PROCESSING METHOD BODY // Here we simply set the input 'In' value to the output 'Out' // And print out the output value // INPUT/OUTPUT ACCESSORS ARE OF THE FORM : // void bbSet{Input|Output}NAME(const TYPE&) // const TYPE& bbGet{Input|Output}NAME() const // Where : // * NAME is the name of the input/output // (the one provided in the attribute 'name' of the tag 'input') // * TYPE is the C++ type of the input/output // (the one provided in the attribute 'type' of the tag 'input') // bbSetOutputOut( bbGetInputIn() ); // std::cout << "Output value = " <SetActive( bbGetInputActive() ); manualpaintmodel->SetTool( bbGetInputTool() ); manualpaintmodel->Set2D3D( bbGetInput2D3D() ); manualpaintmodel->SetImages( bbGetInputImage(),bbGetInputImage2() ); manualpaintmodel->SetGrayLevel( bbGetInputGrayLevel() ); manualpaintmodel->SetDirection( bbGetInputDirection() ); manualpaintmodel->SetBrushSize( bbGetInputBrushSize() ); manualpaintmodel->SetBrushForm( bbGetInputBrushForm() ); manualpaintmodel->SetToleranceFill( bbGetInputToleranceFill() ); 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(); for (i=0;iPaintImage( bbGetInputByLstPointsX()[i] , bbGetInputByLstPointsY()[i] , bbGetInputByLstPointsZ()[i] ); } // for }// if ByLstPointsX if (bbGetInputByImagePoints()!=NULL) { // int ia,ja,ka; // int ii,jj,kk; int ext[6]; bbGetInputByImagePoints()->GetWholeExtent(ext); 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;k0) { GETVALUE_VTK_CREA(vI2,pI2,sTI2) if (vI2==0) { manualpaintmodel->PaintImage(i,j,k); } // vI2 } // vBIP pBIP = pBIP + sSBIP; pI2 = pI2 + sSI2; }// 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 if (bbGetInputImage2()!=NULL) { bbSetOutputOut( bbGetInputImage2() ); } else if (bbGetInputImage()!=NULL) { bbSetOutputOut( bbGetInputImage() ); } 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) //===== void ManualPaint_Model::bbUserSetDefaultValues() { // SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX // Here we initialize the input 'In' to 0 bbSetInputActive(true); bbSetInputTool(1); // Paint bbSetInput2D3D(1); // 3D bbSetInputImage(NULL); bbSetInputImage2(NULL); bbSetInputGrayLevel(100); bbSetInputDirection(2); // XY bbSetInputBrushSize(3); bbSetInputBrushForm(1); // sphere bbSetInputToleranceFill(50); bbSetInputDistanceFill(25); std::vector point; point.push_back(0); point.push_back(0); point.push_back(0); bbSetInputPoint(point); std::vector 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) //===== void ManualPaint_Model::bbUserInitializeProcessing() { // THE INITIALIZATION METHOD BODY : // Here does nothing // but this is where you should allocate the internal/output pointers // if any manualpaintmodel=new ManualPaintModel(); } //===== // 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) //===== void ManualPaint_Model::bbUserFinalizeProcessing() { // THE FINALIZATION METHOD BODY : // Here does nothing // but this is where you should desallocate the internal/output pointers // if any delete manualpaintmodel; } } // EO namespace bbcreaMaracasVisu