49#if !defined(ITK_LEGACY_REMOVE)
52 static constexpr OctreeEnum UNKNOWN_PLANE = OctreeEnum::UNKNOWN_PLANE;
53 static constexpr OctreeEnum SAGITTAL_PLANE = OctreeEnum::SAGITTAL_PLANE;
54 [[deprecated(
"Use SAGITTAL_PLANE instead")]]
static constexpr OctreeEnum SAGITAL_PLANE = OctreeEnum::SAGITTAL_PLANE;
55 static constexpr OctreeEnum CORONAL_PLANE = OctreeEnum::CORONAL_PLANE;
56 static constexpr OctreeEnum TRANSVERSE_PLANE = OctreeEnum::TRANSVERSE_PLANE;
96 const unsigned int xsize,
97 const unsigned int ysize,
98 const unsigned int zsize) = 0;
126template <
typename TPixel,
unsigned int ColorTableSize,
typename MappingFunctionType>
130 ITK_DISALLOW_COPY_AND_MOVE(
Octree);
150 const unsigned int xsize,
151 const unsigned int ysize,
152 const unsigned int zsize)
override;
170 SetTrueDims(
const unsigned int Dim0,
const unsigned int Dim1,
const unsigned int Dim2);
173 GetValue(
const unsigned int Dim0,
const unsigned int Dim1,
const unsigned int Dim2);
187#if !defined(ITK_LEGACY_REMOVE)
192 static constexpr OctreeEnum UNKNOWN_PLANE = OctreeEnum::UNKNOWN_PLANE;
193 static constexpr OctreeEnum SAGITTAL_PLANE = OctreeEnum::SAGITTAL_PLANE;
194 [[deprecated(
"Use SAGITTAL_PLANE instead")]]
static constexpr OctreeEnum SAGITAL_PLANE = OctreeEnum::SAGITTAL_PLANE;
195 static constexpr OctreeEnum CORONAL_PLANE = OctreeEnum::CORONAL_PLANE;
196 static constexpr OctreeEnum TRANSVERSE_PLANE = OctreeEnum::TRANSVERSE_PLANE;
234#ifndef ITK_MANUAL_INSTANTIATION
235# include "itkOctree.hxx"
Templated n-dimensional image class.
SmartPointer< Self > Pointer
Provides non-templated access to templated instances of Octree.
virtual void SetWidth(unsigned int width)=0
SmartPointer< Self > Pointer
virtual int GetColorTableSize() const =0
virtual OctreeNode * GetTree()=0
virtual unsigned int GetWidth()=0
virtual const OctreeNodeBranch * GetColorTable() const =0
virtual void SetDepth(unsigned int depth)=0
OctreeEnums::Octree OctreeEnum
virtual unsigned int GetDepth()=0
virtual void BuildFromBuffer(const void *buffer, const unsigned int xsize, const unsigned int ysize, const unsigned int zsize)=0
A data structure representing a node in an Octree.
void BuildFromImage(Image< TPixel, 3 > *fromImage)
int GetValue(const unsigned int Dim0, const unsigned int Dim1, const unsigned int Dim2)
const OctreeNodeBranch * GetColorTable() const override
Image< TPixel, 3 > ImageType
void SetWidth(unsigned int width) override
typename ImageType::Pointer ImageTypePointer
SmartPointer< Self > Pointer
OctreeNodeBranch m_ColorTable[ColorTableSize]
OctreeNodeBranch * maskToOctree(const TPixel *Mask, unsigned int width, unsigned int x, unsigned int y, unsigned int z, unsigned int xsize, unsigned int ysize, unsigned int zsize)
int GetColorTableSize() const override
OctreeNode * GetTree() override
unsigned int GetDepth() override
ImageTypePointer GetImage()
void SetDepth(unsigned int depth) override
MappingFunctionType m_MappingFunction
unsigned int GetWidth() override
void SetTree(OctreeNodeBranch *branch)
void SetTrueDims(const unsigned int Dim0, const unsigned int Dim1, const unsigned int Dim2)
void BuildFromBuffer(const void *frombuffer, const unsigned int xsize, const unsigned int ysize, const unsigned int zsize) override
void SetColor(unsigned int color)
unsigned int m_TrueDims[3]
Implements transparent reference counting.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....