28#ifndef itkBoundingBox_h
29#define itkBoundingBox_h
67 unsigned int VPointDimension = 3,
68 typename TCoordinate = float,
93#ifndef ITK_FUTURE_LEGACY_REMOVE
94 using CoordRepType ITK_FUTURE_DEPRECATED(
95 "ITK 6 discourages using `CoordRepType`. Please use `CoordinateType` instead!") =
CoordinateType;
125 std::array<PointType, NumberOfCorners>
205#if !defined(ITK_LEGACY_REMOVE)
206 PointsContainerPointer m_CornersContainer{ PointsContainer::New() };
214#ifndef ITK_MANUAL_INSTANTIATION
215# include "itkBoundingBox.hxx"
ModifiedTimeType GetMTime() const override
const PointsContainer * GetCorners()
TPointsContainer PointsContainer
void SetMaximum(const PointType &)
typename PointsContainer::Iterator PointsContainerIterator
SmartPointer< Self > Pointer
void ConsiderPoint(const PointType &)
static constexpr unsigned int PointDimension
void SetPoints(const PointsContainer *)
AccumulateType GetDiagonalLength2() const
bool ComputeBoundingBox() const
typename PointsContainer::Pointer PointsContainerPointer
void SetMinimum(const PointType &)
typename PointsContainer::ConstPointer PointsContainerConstPointer
typename NumericTraits< CoordinateType >::AccumulateType AccumulateType
bool IsInside(const PointType &) const
~BoundingBox() override=default
static constexpr SizeValueType NumberOfCorners
void PrintSelf(std::ostream &os, Indent indent) const override
TPointIdentifier PointIdentifier
PointsContainerConstPointer m_PointsContainer
TCoordinate CoordinateType
SmartPointer< const Self > ConstPointer
Point< CoordinateType, VPointDimension > PointType
typename PointsContainer::ConstIterator PointsContainerConstIterator
FixedArray< CoordinateType, VPointDimension *2 > BoundsArrayType
std::array< PointType, NumberOfCorners > ComputeCorners() const
PointType GetMaximum() const
PointType GetMinimum() const
typename PointsContainer::ConstIterator ConstIterator
const PointsContainer * GetPoints() const
PointType GetCenter() const
Simulate a standard C array with copy semantics.
Control indentation during Print() invocation.
A templated class holding a geometric point in n-Dimensional space.
Implements transparent reference counting.
Generate a unique, increasing time value.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
SizeValueType IdentifierType
unsigned long SizeValueType
detail::VectorContainer< std::conditional_t< std::is_void_v< T2 >, SizeValueType, T1 >, std::conditional_t< std::is_void_v< T2 >, T1, T2 > > VectorContainer
SizeValueType ModifiedTimeType