X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=itk%2FclitkAddRelativePositionConstraintToLabelImageFilter.h;h=00edd718b167f5d980dacd6941eeb7a587b951d2;hb=1d365ed1e37fdf249a317a721140288f4dc259cc;hp=c3655719294752311d5f94da12a30fbe662d414e;hpb=a24b0a699298efe54b53c53cb215455fecd633fe;p=clitk.git diff --git a/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h b/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h index c365571..00edd71 100644 --- a/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h +++ b/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h @@ -3,7 +3,7 @@ Authors belong to: - University of LYON http://www.universite-lyon.fr/ - - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - Léon Bérard cancer center http://www.centreleonberard.fr - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr This software is distributed WITHOUT ANY WARRANTY; without even @@ -14,13 +14,14 @@ - BSD See included LICENSE.txt file - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html - ======================================================================-====*/ + ===========================================================================**/ #ifndef CLITKADDRELATIVEPOSITIONCONSTRAINTTOLABELIMAGEFILTER_H #define CLITKADDRELATIVEPOSITIONCONSTRAINTTOLABELIMAGEFILTER_H // clitk #include "clitkFilterBase.h" +#include "clitkCropLikeImageFilter.h" // itk #include @@ -91,14 +92,17 @@ namespace clitk { void AddOrientationType(OrientationTypeEnumeration orientation); void AddOrientationTypeString(std::string s); void ClearOrientationType(); - void AddAngles(double a, double b); + void AddAnglesInRad(double a, double b); + void AddAnglesInDeg(double a, double b); + double GetAngle1InRad(int i) { return m_Angle1[i]; } + double GetAngle2InRad(int i) { return m_Angle2[i]; } int GetNumberOfAngles(); std::string GetOrientationTypeString(int i) { return m_OrientationTypeString[i]; } std::vector & GetOrientationTypeString() { return m_OrientationTypeString; } - itkGetConstMacro(ResampleBeforeRelativePositionFilter, bool); - itkSetMacro(ResampleBeforeRelativePositionFilter, bool); - itkBooleanMacro(ResampleBeforeRelativePositionFilter); + itkGetConstMacro(IntermediateSpacingFlag, bool); + itkSetMacro(IntermediateSpacingFlag, bool); + itkBooleanMacro(IntermediateSpacingFlag); itkGetConstMacro(IntermediateSpacing, double); itkSetMacro(IntermediateSpacing, double); @@ -128,6 +132,18 @@ namespace clitk { itkSetMacro(CombineWithOrFlag, bool); itkBooleanMacro(CombineWithOrFlag); + itkGetConstMacro(FuzzyMapOnlyFlag, bool); + itkSetMacro(FuzzyMapOnlyFlag, bool); + itkBooleanMacro(FuzzyMapOnlyFlag); + + typename FloatImageType::Pointer GetFuzzyMap() { return m_FuzzyMap; } + + // I dont want to verify inputs information + virtual void VerifyInputInformation() { } + + // For debug + void PrintOptions(); + protected: AddRelativePositionConstraintToLabelImageFilter(); virtual ~AddRelativePositionConstraintToLabelImageFilter() {} @@ -140,20 +156,22 @@ namespace clitk { PixelType m_ObjectBackgroundValue; std::vector m_Angle1; std::vector m_Angle2; - bool m_ResampleBeforeRelativePositionFilter; + bool m_IntermediateSpacingFlag; bool m_AutoCropFlag; bool m_InverseOrientationFlag; bool m_RemoveObjectFlag; bool m_CombineWithOrFlag; + bool m_FuzzyMapOnlyFlag; virtual void GenerateOutputInformation(); virtual void GenerateInputRequestedRegion(); virtual void GenerateData(); - typedef itk::PasteImageFilter PadFilterType; + typedef itk::PasteImageFilter PasteFilterType; typename ImageType::Pointer working_image; typename ImageType::Pointer object_resampled; typename FloatImageType::Pointer relPos; + typename FloatImageType::Pointer m_FuzzyMap; ImagePointer input; ImagePointer object;