18 #ifndef __itkShapeLabelMapFilter_h
19 #define __itkShapeLabelMapFilter_h
51 template<
class TImage,
class TLabelImage =
52 Image< typename TImage::PixelType, ::itk::GetImageDimension< TImage >::ImageDimension > >
83 itkStaticConstMacro(ImageDimension,
unsigned int, TImage::ImageDimension);
91 #ifdef ITK_USE_CONCEPT_CHECKING
107 itkSetMacro(ComputeFeretDiameter,
bool);
108 itkGetConstReferenceMacro(ComputeFeretDiameter,
bool);
109 itkBooleanMacro(ComputeFeretDiameter);
116 itkSetMacro(ComputePerimeter,
bool);
117 itkGetConstReferenceMacro(ComputePerimeter,
bool);
118 itkBooleanMacro(ComputePerimeter);
122 void SetLabelImage(
const TLabelImage *input)
124 m_LabelImage = input;
131 virtual void ThreadedProcessLabelObject(LabelObjectType *labelObject);
133 virtual void BeforeThreadedGenerateData();
135 virtual void AfterThreadedGenerateData();
137 void PrintSelf(std::ostream & os,
Indent indent)
const;
141 void operator=(
const Self &);
154 typedef std::map<Offset2Type, SizeValueType, Offset2Type::LexicographicCompare>
MapIntercept2Type;
155 typedef std::map<Offset3Type, SizeValueType, Offset3Type::LexicographicCompare>
MapIntercept3Type;
159 template<
class TMapIntercept,
class TSpacing>
double PerimeterFromInterceptCount( TMapIntercept & intercepts,
const TSpacing & spacing );
160 #if ! defined(ITK_DO_NOT_USE_PERIMETER_SPECIALIZATION)
169 #ifndef ITK_MANUAL_INSTANTIATION
170 #include "itkShapeLabelMapFilter.hxx"