X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=itk%2FclitkAddRelativePositionConstraintToLabelImageFilter.h;h=00edd718b167f5d980dacd6941eeb7a587b951d2;hb=3b74618a8efd24d3d277c75fda1ddc4b2f104d51;hp=7eb531ee470c5b7c4d5f1ece47751c4c861ca799;hpb=573d80d0f7a17607d2ee883c21c940c0ba020282;p=clitk.git diff --git a/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h b/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h index 7eb531e..00edd71 100644 --- a/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h +++ b/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h @@ -21,6 +21,7 @@ // clitk #include "clitkFilterBase.h" +#include "clitkCropLikeImageFilter.h" // itk #include @@ -78,7 +79,7 @@ namespace clitk { typedef itk::Image FloatImageType; /** Orientation types */ - typedef enum { AtRightTo = 0, AtLeftTo = 1, + typedef enum { RightTo = 0, LeftTo = 1, AntTo = 2, PostTo = 3, InfTo = 4, SupTo = 5, Angle = 6 } OrientationTypeEnumeration; @@ -91,7 +92,10 @@ 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; } @@ -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() {} @@ -145,6 +161,7 @@ namespace clitk { bool m_InverseOrientationFlag; bool m_RemoveObjectFlag; bool m_CombineWithOrFlag; + bool m_FuzzyMapOnlyFlag; virtual void GenerateOutputInformation(); virtual void GenerateInputRequestedRegion(); @@ -154,6 +171,7 @@ namespace clitk { typename ImageType::Pointer working_image; typename ImageType::Pointer object_resampled; typename FloatImageType::Pointer relPos; + typename FloatImageType::Pointer m_FuzzyMap; ImagePointer input; ImagePointer object;