X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=itk%2FclitkAddRelativePositionConstraintToLabelImageFilter.h;h=c801dc0249972388f08de240a14a0b6a47dc5af1;hb=8ce049c3b7fbb418f7fb106c726bc0bf37c06e12;hp=3a82ee22f9f379955874b42c8677c51a013ed527;hpb=cd0efd1d1f63d972c449b0550ab0b3c8ed500a15;p=clitk.git diff --git a/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h b/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h index 3a82ee2..c801dc0 100644 --- a/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h +++ b/itk/clitkAddRelativePositionConstraintToLabelImageFilter.h @@ -78,7 +78,7 @@ namespace clitk { typedef itk::Image FloatImageType; /** Orientation types */ - typedef enum { RightTo = 0, LeftTo = 1, + typedef enum { AtRightTo = 0, AtLeftTo = 1, AntTo = 2, PostTo = 3, InfTo = 4, SupTo = 5, Angle = 6 } OrientationTypeEnumeration; @@ -88,19 +88,17 @@ namespace clitk { void SetInputObject(const ImageType * image); // Options - void SetOrientationType(OrientationTypeEnumeration orientation); - itkGetConstMacro(OrientationType, OrientationTypeEnumeration); - void SetOrientationTypeString(std::string s); - itkGetConstMacro(OrientationTypeString, std::string); - - void SetAngle1(double a); - void SetAngle2(double a); - itkGetConstMacro(Angle1, double); - itkGetConstMacro(Angle2, double); - - itkGetConstMacro(ResampleBeforeRelativePositionFilter, bool); - itkSetMacro(ResampleBeforeRelativePositionFilter, bool); - itkBooleanMacro(ResampleBeforeRelativePositionFilter); + void AddOrientationType(OrientationTypeEnumeration orientation); + void AddOrientationTypeString(std::string s); + void ClearOrientationType(); + void AddAngles(double a, double b); + int GetNumberOfAngles(); + std::string GetOrientationTypeString(int i) { return m_OrientationTypeString[i]; } + std::vector & GetOrientationTypeString() { return m_OrientationTypeString; } + + itkGetConstMacro(IntermediateSpacingFlag, bool); + itkSetMacro(IntermediateSpacingFlag, bool); + itkBooleanMacro(IntermediateSpacingFlag); itkGetConstMacro(IntermediateSpacing, double); itkSetMacro(IntermediateSpacing, double); @@ -118,31 +116,41 @@ namespace clitk { itkSetMacro(AutoCropFlag, bool); itkBooleanMacro(AutoCropFlag); - itkGetConstMacro(NotFlag, bool); - itkSetMacro(NotFlag, bool); - itkBooleanMacro(NotFlag); + itkGetConstMacro(InverseOrientationFlag, bool); + itkSetMacro(InverseOrientationFlag, bool); + itkBooleanMacro(InverseOrientationFlag); + + itkGetConstMacro(RemoveObjectFlag, bool); + itkSetMacro(RemoveObjectFlag, bool); + itkBooleanMacro(RemoveObjectFlag); + + itkGetConstMacro(CombineWithOrFlag, bool); + itkSetMacro(CombineWithOrFlag, bool); + itkBooleanMacro(CombineWithOrFlag); protected: AddRelativePositionConstraintToLabelImageFilter(); virtual ~AddRelativePositionConstraintToLabelImageFilter() {} - OrientationTypeEnumeration m_OrientationType; - std::string m_OrientationTypeString; + std::vector m_OrientationType; + std::vector m_OrientationTypeString; double m_IntermediateSpacing; double m_FuzzyThreshold; PixelType m_BackgroundValue; PixelType m_ObjectBackgroundValue; - double m_Angle1; - double m_Angle2; - bool m_ResampleBeforeRelativePositionFilter; + std::vector m_Angle1; + std::vector m_Angle2; + bool m_IntermediateSpacingFlag; bool m_AutoCropFlag; - bool m_NotFlag; + bool m_InverseOrientationFlag; + bool m_RemoveObjectFlag; + bool m_CombineWithOrFlag; 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;