From a4a6cf179ce4160887c0566115493f1e8f109854 Mon Sep 17 00:00:00 2001 From: davila Date: Sat, 28 Jun 2014 08:42:28 +0200 Subject: [PATCH] ED Signed-off-by: davila --- INSTALL.txt | 1 + INSTALL.txt~ | 69 +++++ README.txt~ | 50 ++++ .../src/bbitkBinaryThresholdImageFilter.h~ | 242 ++++++++++++++++++ .../vtk/src/bbvtkExtractVtkImageFilter.cxx~ | 117 +++++++++ packages/vtk/src/bbvtkUpdateRender.cxx~ | 62 +++++ 6 files changed, 541 insertions(+) create mode 100644 INSTALL.txt~ create mode 100644 README.txt~ create mode 100644 packages/itk/src/bbitkBinaryThresholdImageFilter.h~ create mode 100644 packages/vtk/src/bbvtkExtractVtkImageFilter.cxx~ create mode 100644 packages/vtk/src/bbvtkUpdateRender.cxx~ diff --git a/INSTALL.txt b/INSTALL.txt index eb7a1e4..c5c42cc 100644 --- a/INSTALL.txt +++ b/INSTALL.txt @@ -29,6 +29,7 @@ or ./kernel/doc/bbtkWebSite/install.html for details + *********** ** LINUX ** *********** diff --git a/INSTALL.txt~ b/INSTALL.txt~ new file mode 100644 index 0000000..eb7a1e4 --- /dev/null +++ b/INSTALL.txt~ @@ -0,0 +1,69 @@ + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + +Basic instructions here. +Read http://www.creatis.insa-lyon.fr/site/en/CreaTools_home +or ./kernel/doc/bbtkWebSite/install.html +for details + + +*********** +** LINUX ** +*********** + +==== INSTALL ==== +- create a build dir *OUTSIDE* the source tree; go to that dir +- type : +> ccmake PATH_TO_SOURCE_TREE +- switch BUILD_ALL to ON +- press 'c' at least 10 times ! +- press 'g' +- type : +> make +> su (NOTE: installing as a sudoer usually fails...) +type root password +> make install +> exit + +==== GNOME DESKTOP ==== +If you use gnome desktop you can install +a bbi launcher on desktop and associate it to *.bbs files. +First, be sure to be logged *WITH YOUR USER NAME, NOT ROOT* +(otherwise will be installed for root desktop) and type : +> bbtk-install-gnome + +==== UNINSTALL ==== +To uninstall bbtk, type : +> su (NOTE: uninstalling as a sudoer usually fails...) +type root password +> bbtk-uninstall + + + +************* +** WINDOWS ** +************* + +Visit the web site ! diff --git a/README.txt~ b/README.txt~ new file mode 100644 index 0000000..fc811f5 --- /dev/null +++ b/README.txt~ @@ -0,0 +1,50 @@ + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + + +The Black Box Toolkit +(c) CREATIS-LRMN 2008 + + + +Note Xcode MacOS: +- ccmake -G"Xcode" + +- LATEX_COMPILER:/opt/local/bin/latex + +- QT_QMAKER_EXECUTABLE:/opt/local/libexec/qt4-mac/bin/qmake + +- Erase all "-Wno-long-double" from the file + BBTK.xcodeproj/project.pbxproj + > sed "s/-Wno-long-double/ /g" BBTK.xcodeproj/project.pbxproj > BBTK.xcodeproj/tmp.txt + > cp BBTK.xcodeproj/tmp.txt BBTK.xcodeproj/project.pbxproj + +- Change compiler version + 1.open + 2.Project + -> Edit project settings + -> Build + 3.Copiler Version -> C/C++ CompilerVersion + GCC 4.2 diff --git a/packages/itk/src/bbitkBinaryThresholdImageFilter.h~ b/packages/itk/src/bbitkBinaryThresholdImageFilter.h~ new file mode 100644 index 0000000..dcc7ecd --- /dev/null +++ b/packages/itk/src/bbitkBinaryThresholdImageFilter.h~ @@ -0,0 +1,242 @@ +/* + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + +/*========================================================================= + Program: bbtk + Module: $RCSfile: bbitkBinaryThresholdImageFilter.h,v $ + Language: C++ + Date: $Date: 2012/11/16 08:50:39 $ + Version: $Revision: 1.14 $ +=========================================================================*/ + +/* --------------------------------------------------------------------- + +* Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) +* Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux +* +* This software is governed by the CeCILL-B license under French law and +* abiding by the rules of distribution of free software. You can use, +* modify and/ or redistribute the software under the terms of the CeCILL-B +* license as circulated by CEA, CNRS and INRIA at the following URL +* http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +* or in the file LICENSE.txt. +* +* As a counterpart to the access to the source code and rights to copy, +* modify and redistribute granted by the license, users are provided only +* with a limited warranty and the software's author, the holder of the +* economic rights, and the successive licensors have only limited +* liability. +* +* The fact that you are presently reading this means that you have had +* knowledge of the CeCILL-B license and that you accept its terms. +* ------------------------------------------------------------------------ */ + + +#ifdef _USE_ITK_ + +#include "bbtkAtomicBlackBox.h" +#include "itkBinaryThresholdImageFilter.h" +#include "bbtkItkBlackBoxMacros.h" +#include "bbitkImage.h" + +namespace bbitk +{ + + //=================================================== + template + class /*BBTK_EXPORT*/ BinaryThresholdImageFilter + : + public bbtk::AtomicBlackBox, + public itk::BinaryThresholdImageFilter + { + BBTK_TEMPLATE_BLACK_BOX_INTERFACE(BinaryThresholdImageFilter, + bbtk::AtomicBlackBox,T); + typedef itk::BinaryThresholdImageFilter itkParent; + BBTK_DECLARE_ITK_INPUT(In,const T*); + BBTK_DECLARE_ITK_PARAM(LowerThreshold,typename T::PixelType); + BBTK_DECLARE_ITK_PARAM(UpperThreshold,typename T::PixelType); + BBTK_DECLARE_ITK_PARAM(InsideValue,typename T::PixelType); + BBTK_DECLARE_ITK_PARAM(OutsideValue,typename T::PixelType); + BBTK_DECLARE_ITK_OUTPUT(Out,T*); + BBTK_ITK_PROCESS(); + BBTK_ITK_DELETE(); + + }; + //=================================================== + + //=================================================== + BBTK_BEGIN_DESCRIBE_TEMPLATE_BLACK_BOX(BinaryThresholdImageFilter, + bbtk::AtomicBlackBox); + BBTK_NAME("BinaryThresholdImageFilter<"+bbtk::TypeName()+">"); + BBTK_AUTHOR("laurent.guigues@creatis.insa-lyon.fr"); + BBTK_DESCRIPTION("Binarizes an image by thresholding (bbification of itk::BinaryThresholdImageFilter)"); + BBTK_TEMPLATE_INPUT(BinaryThresholdImageFilter,In,"Input image",const T*); + BBTK_TEMPLATE_INPUT(BinaryThresholdImageFilter,LowerThreshold, + "Lower threshold",typename T::PixelType); + BBTK_TEMPLATE_INPUT(BinaryThresholdImageFilter,UpperThreshold, + "Upper threshold",typename T::PixelType); + BBTK_TEMPLATE_INPUT(BinaryThresholdImageFilter,InsideValue, + "Output value for pixels inside thresholds", + typename T::PixelType); + BBTK_TEMPLATE_INPUT(BinaryThresholdImageFilter,OutsideValue, + "Output value for pixels outside thresholds", + typename T::PixelType); + BBTK_TEMPLATE_OUTPUT(BinaryThresholdImageFilter,Out,"Output image",T*); + BBTK_END_DESCRIBE_TEMPLATE_BLACK_BOX(BinaryThresholdImageFilter); + //=================================================== + + + //=================================================== + //-- + template + void BinaryThresholdImageFilter::bbUserSetDefaultValues() + { + bbSetInputLowerThreshold(0); + bbSetInputUpperThreshold(100); + bbSetInputInsideValue(255); + bbSetInputOutsideValue(0); + } + template + void BinaryThresholdImageFilter::bbUserInitializeProcessing() + { + } + template + void BinaryThresholdImageFilter::bbUserFinalizeProcessing() + { + } + + //=================================================== + + + + + + + + + + + + //=================================================== + // Generic "untemplatized" filter + //=================================================== + class /*BBTK_EXPORT*/ BinaryThresholdImageFilterGeneric + : + public bbtk::AtomicBlackBox + { + BBTK_BLACK_BOX_INTERFACE(BinaryThresholdImageFilterGeneric, + bbtk::AtomicBlackBox); + BBTK_DECLARE_INPUT(In,anyImagePointer); + BBTK_DECLARE_INPUT(LowerThreshold,double); + BBTK_DECLARE_INPUT(UpperThreshold,double); + BBTK_DECLARE_INPUT(InsideValue,double); + BBTK_DECLARE_INPUT(OutsideValue,double); + BBTK_DECLARE_OUTPUT(Out,anyImagePointer); + BBTK_PROCESS(ProcessSwitch); + private : + inline void ProcessSwitch(); + template void Process(); + }; + //=================================================== + + + //=================================================== + + BBTK_BEGIN_DESCRIBE_BLACK_BOX(BinaryThresholdImageFilterGeneric, + bbtk::AtomicBlackBox); + BBTK_NAME("BinaryThresholdImageFilter"); + BBTK_AUTHOR("laurent.guigues at creatis.insa-lyon.fr"); + BBTK_CATEGORY("filter;image"); + BBTK_DESCRIPTION("Binarizes an image by thresholding (generic bbification of itk::BinaryThresholdImageFilter)"); + BBTK_INPUT(BinaryThresholdImageFilterGeneric,In, + "Input image. Can be any itk::Image*",anyImagePointer,""); + BBTK_INPUT(BinaryThresholdImageFilterGeneric,LowerThreshold, + "Lower threshold",double,""); + BBTK_INPUT(BinaryThresholdImageFilterGeneric,UpperThreshold, + "Upper threshold",double,""); + BBTK_INPUT(BinaryThresholdImageFilterGeneric,InsideValue, + "Output value for pixels inside thresholds",double,""); + BBTK_INPUT(BinaryThresholdImageFilterGeneric,OutsideValue, + "Output value for pixels outside thresholds",double,""); + BBTK_OUTPUT(BinaryThresholdImageFilterGeneric,Out, + "Output image. Of the same type and dimension than the input image", + anyImagePointer,""); + BBTK_END_DESCRIBE_BLACK_BOX(BinaryThresholdImageFilterGeneric); + //=================================================== + + + + + //=================================================== + + void BinaryThresholdImageFilterGeneric::ProcessSwitch() + { + BBTK_TEMPLATE_ITK_IMAGE_SWITCH(bbGetInputIn().type(), this->Process); + } + //=================================================== + + + //=================================================== + + template + void BinaryThresholdImageFilterGeneric::Process() + { + bbtkDebugMessageInc("Core",9, + "bbitk::BinaryThresholdImageFilterGeneric::Process<" + <()<<">()"< FilterType; + typename FilterType::Pointer f = FilterType::New("Temp"); + typedef T* TPointer; + f->bbSetInputIn( this->bbGetInputIn().get < TPointer > () ); + f->bbSetInputLowerThreshold ( (typename T::PixelType) + this->bbGetInputLowerThreshold() ); + f->bbSetInputUpperThreshold ( (typename T::PixelType) + this->bbGetInputUpperThreshold() ); + f->bbSetInputInsideValue ( (typename T::PixelType) + this->bbGetInputInsideValue() ); + f->bbSetInputOutsideValue ( (typename T::PixelType) + this->bbGetInputOutsideValue() ); + f->bbExecute(); + f->bbGetOutputOut()->Register(); + this->bbSetOutputOut( f->bbGetOutputOut() ); + + bbtkDebugDecTab("Core",9); + } + + //=================================================== + + + + + + + + +} +// EO namespace bbtk + +#endif diff --git a/packages/vtk/src/bbvtkExtractVtkImageFilter.cxx~ b/packages/vtk/src/bbvtkExtractVtkImageFilter.cxx~ new file mode 100644 index 0000000..efbbe22 --- /dev/null +++ b/packages/vtk/src/bbvtkExtractVtkImageFilter.cxx~ @@ -0,0 +1,117 @@ +/* + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + + +//===== +// 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 "bbvtkExtractVtkImageFilter.h" +#include "bbvtkPackage.h" +namespace bbvtk +{ + +BBTK_ADD_BLACK_BOX_TO_PACKAGE(vtk,ExtractVtkImageFilter) +BBTK_BLACK_BOX_IMPLEMENTATION(ExtractVtkImageFilter,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 ExtractVtkImageFilter::Process() +{ + int voi[6]; + + voi[0] = bbGetInputIndex()[0]; + voi[1] = bbGetInputIndex()[0]+bbGetInputSize()[0]-1; + voi[2] = bbGetInputIndex()[1]; + voi[3] = bbGetInputIndex()[1]+bbGetInputSize()[1]-1; + voi[4] = bbGetInputIndex()[2]; + voi[5] = bbGetInputIndex()[2]+bbGetInputSize()[2]-1; + + _extract->SetInput( bbGetInputIn() ); + _extract->SetVOI(voi); + _extract->UpdateWholeExtent(); + _extract->Modified(); + _extract->Update(); + bbSetOutputOut(_extract->GetOutput()); +} + +//===== +// 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 ExtractVtkImageFilter::bbUserSetDefaultValues() +{ + +// SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX +// Here we initialize the input 'In' to 0 + + _extract =NULL; + + bbSetInputIn(0); + + std::vector tmpIndex; + tmpIndex.push_back(0); + tmpIndex.push_back(0); + tmpIndex.push_back(0); + std::vector tmpSize; + tmpSize.push_back(1); + tmpSize.push_back(1); + tmpSize.push_back(1); + bbSetInputIndex(tmpIndex); + bbSetInputSize(tmpSize); + + bbSetOutputOut(0); + +} +//===== +// 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 ExtractVtkImageFilter::bbUserInitializeProcessing() +{ + +// THE INITIALIZATION METHOD BODY : +// Here does nothing +// but this is where you should allocate the internal/output pointers +// if any + _extract = vtkExtractVOI::New(); + + +} +//===== +// 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 ExtractVtkImageFilter::bbUserFinalizeProcessing() +{ + +// THE FINALIZATION METHOD BODY : +// Here does nothing +// but this is where you should desallocate the internal/output pointers +// if any + + _extract->Delete(); +} +} +// EO namespace bbvtk + + diff --git a/packages/vtk/src/bbvtkUpdateRender.cxx~ b/packages/vtk/src/bbvtkUpdateRender.cxx~ new file mode 100644 index 0000000..691f32c --- /dev/null +++ b/packages/vtk/src/bbvtkUpdateRender.cxx~ @@ -0,0 +1,62 @@ +/* + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + + + +#include "bbvtkUpdateRender.h" +#include "bbvtkPackage.h" +namespace bbvtk { + + BBTK_ADD_BLACK_BOX_TO_PACKAGE(vtk, UpdateRender) + BBTK_BLACK_BOX_IMPLEMENTATION(UpdateRender, bbtk::AtomicBlackBox); + + void UpdateRender::Process() + { + if(bbGetInputActive()) + { + if (bbGetInputRenderer()!=NULL) + { + bbGetInputRenderer()->GetRenderWindow()->Render(); + } + } // Active + } + + void UpdateRender::bbUserSetDefaultValues() { + bbSetInputActive(false); + bbSetInputRenderer(NULL); + } + + void UpdateRender::bbUserInitializeProcessing() { + + } + + void UpdateRender::bbUserFinalizeProcessing() { + + } +} +// EO namespace bbvtk + + -- 2.45.0