18 #ifndef itkEllipseSpatialObject_h
19 #define itkEllipseSpatialObject_h
37 template <
unsigned int TDimension = 3>
57 static constexpr
unsigned int ObjectDimension = TDimension;
73 SetRadiusInObjectSpace(
double radius);
76 itkSetMacro(RadiusInObjectSpace,
ArrayType);
79 itkGetConstReferenceMacro(RadiusInObjectSpace,
ArrayType);
82 itkSetMacro(CenterInObjectSpace,
PointType);
85 itkGetConstReferenceMacro(CenterInObjectSpace,
PointType);
89 IsInsideInObjectSpace(
const PointType & point)
const override;
92 using Superclass::IsInsideInObjectSpace;
94 #if !defined(ITK_LEGACY_REMOVE)
95 itkLegacyMacro(
void SetRadius(
double radius)) { this->SetRadiusInObjectSpace(radius); }
97 itkLegacyMacro(
void SetRadius(ArrayType radii)) { this->SetRadiusInObjectSpace(radii); }
99 itkLegacyMacro(ArrayType GetRadius()
const) {
return this->GetRadiusInObjectSpace(); }
101 itkLegacyMacro(
void SetRadiiInObjectSpace(ArrayType radii)) { this->SetRadiusInObjectSpace(radii); }
108 ComputeMyBoundingBox()
override;
110 EllipseSpatialObject();
111 ~EllipseSpatialObject()
override =
default;
115 PrintSelf(std::ostream & os, Indent indent)
const override;
118 InternalClone()
const override;
128 #ifndef ITK_MANUAL_INSTANTIATION
129 # include "itkEllipseSpatialObject.hxx"
132 #endif // itkEllipseSpatialObject_h