ITK
6.0.0
Insight Toolkit
|
#include <itkOctree.h>
Represent a 3D Image with an Octree data structure.
Parameterized on Pixel type of the image, number of colors in color table, and a Mapping function, derived from itk::FunctionBase
Definition at line 127 of file itkOctree.h.
Public Types | |
using | ImageType = Image< TPixel, 3 > |
using | ImageTypePointer = typename ImageType::Pointer |
using | Pointer = SmartPointer< Self > |
using | Self = Octree |
using | Superclass = OctreeBase |
Public Types inherited from itk::OctreeBase | |
using | OctreeEnum = OctreeEnums::Octree |
using | Pointer = SmartPointer< Self > |
using | Self = OctreeBase |
Public Types inherited from itk::Object | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = Object |
using | Superclass = LightObject |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
Public Member Functions | |
void | BuildFromBuffer (const void *frombuffer, const unsigned int xsize, const unsigned int ysize, const unsigned int zsize) override |
void | BuildFromImage (Image< TPixel, 3 > *fromImage) |
const OctreeNodeBranch * | GetColorTable () const override |
int | GetColorTableSize () const override |
unsigned int | GetDepth () override |
ImageTypePointer | GetImage () |
const char * | GetNameOfClass () const override |
OctreeNode * | GetTree () override |
int | GetValue (const unsigned int Dim0, const unsigned int Dim1, const unsigned int Dim2) |
unsigned int | GetWidth () override |
Octree () | |
void | SetColor (unsigned int color) |
void | SetDepth (unsigned int depth) override |
void | SetTree (OctreeNodeBranch *branch) |
void | SetTrueDims (const unsigned int Dim0, const unsigned int Dim1, const unsigned int Dim2) |
void | SetWidth (unsigned int width) override |
~Octree () override | |
virtual void | BuildFromBuffer (const void *buffer, const unsigned int xsize, const unsigned int ysize, const unsigned int zsize)=0 |
virtual const OctreeNodeBranch * | GetColorTable () const =0 |
virtual int | GetColorTableSize () const =0 |
virtual unsigned int | GetDepth ()=0 |
virtual OctreeNode * | GetTree ()=0 |
virtual unsigned int | GetWidth ()=0 |
virtual void | SetDepth (unsigned int depth)=0 |
virtual void | SetWidth (unsigned int width)=0 |
Public Member Functions inherited from itk::Object | |
unsigned long | AddObserver (const EventObject &event, Command *cmd) const |
unsigned long | AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const |
LightObject::Pointer | CreateAnother () const override |
virtual void | DebugOff () const |
virtual void | DebugOn () const |
Command * | GetCommand (unsigned long tag) |
bool | GetDebug () const |
MetaDataDictionary & | GetMetaDataDictionary () |
const MetaDataDictionary & | GetMetaDataDictionary () const |
virtual ModifiedTimeType | GetMTime () const |
const char * | GetNameOfClass () const override |
virtual const TimeStamp & | GetTimeStamp () const |
bool | HasObserver (const EventObject &event) const |
void | InvokeEvent (const EventObject &) |
void | InvokeEvent (const EventObject &) const |
virtual void | Modified () const |
void | Register () const override |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) const |
void | SetDebug (bool debugFlag) const |
void | SetReferenceCount (int) override |
void | UnRegister () const noexcept override |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
void | SetMetaDataDictionary (MetaDataDictionary &&rrhs) |
virtual void | SetObjectName (std::string _arg) |
virtual const std::string & | GetObjectName () const |
Public Member Functions inherited from itk::LightObject | |
Pointer | Clone () const |
virtual Pointer | CreateAnother () const |
virtual void | Delete () |
virtual const char * | GetNameOfClass () const |
virtual int | GetReferenceCount () const |
void | Print (std::ostream &os, Indent indent=0) const |
virtual void | Register () const |
virtual void | SetReferenceCount (int) |
virtual void | UnRegister () const noexcept |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool val) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Private Member Functions | |
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) |
Private Attributes | |
OctreeNodeBranch | m_ColorTable [ColorTableSize] |
unsigned int | m_Depth { 0 } |
MappingFunctionType | m_MappingFunction {} |
OctreeEnum | m_Plane { OctreeEnum::UNKNOWN_PLANE } |
OctreeNode | m_Tree {} |
unsigned int | m_TrueDims [3] {} |
unsigned int | m_Width { 0 } |
Additional Inherited Members | |
Protected Member Functions inherited from itk::Object | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
void | PrintSelf (std::ostream &os, Indent indent) const override |
virtual void | SetTimeStamp (const TimeStamp &timeStamp) |
~Object () override | |
Protected Member Functions inherited from itk::LightObject | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintSelf (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount {} |
using itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::ImageType = Image<TPixel, 3> |
Definition at line 136 of file itkOctree.h.
using itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::ImageTypePointer = typename ImageType::Pointer |
Definition at line 137 of file itkOctree.h.
using itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::Pointer = SmartPointer<Self> |
Definition at line 135 of file itkOctree.h.
using itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::Self = Octree |
Standard class type aliases.
Definition at line 133 of file itkOctree.h.
using itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::Superclass = OctreeBase |
Definition at line 134 of file itkOctree.h.
itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::Octree | ( | ) |
|
override |
|
overridevirtual |
Build an Octree from an Image's pixel buffer.
Method needed for ImageIO class, which has no handle on image, just the pixel buffer.
Implements itk::OctreeBase.
void itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::BuildFromImage | ( | Image< TPixel, 3 > * | fromImage | ) |
|
overridevirtual |
Get the ColorTable Pointer
Returns color table pointer for this tree.
Each Octree has an array of OctreeNodeBranch whose size = the number of color table entries. Each Node in the Octree points either to 8 sub-nodes, or into the ColorTable; The color table isn't actually used to hold data; it simply provides a range of unique addresses that are distinct from the address of any valid subtree.
Implements itk::OctreeBase.
|
overridevirtual |
Get the size of the Color Table
Implements itk::OctreeBase.
|
overridevirtual |
Get tree depth.
Depth represents x, for the smallest 2^x >= largest image dimension
Implements itk::OctreeBase.
ImageTypePointer itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::GetImage | ( | ) |
|
overridevirtual |
Reimplemented from itk::Object.
|
overridevirtual |
Get the actual tree base
Returns the tree, or 0 if the Octree isn't built yet
Implements itk::OctreeBase.
int itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::GetValue | ( | const unsigned int | Dim0, |
const unsigned int | Dim1, | ||
const unsigned int | Dim2 | ||
) |
|
overridevirtual |
Get tree width.
Width == smallest 2^x >= largest image dimension i.e. 2^Depth == Width
Implements itk::OctreeBase.
|
private |
|
static |
Method for creation through the object factory.
|
inline |
Definition at line 159 of file itkOctree.h.
|
overridevirtual |
Set the depth, e.g. when reading tree from a file.
Implements itk::OctreeBase.
|
inline |
Definition at line 164 of file itkOctree.h.
void itk::Octree< TPixel, ColorTableSize, MappingFunctionType >::SetTrueDims | ( | const unsigned int | Dim0, |
const unsigned int | Dim1, | ||
const unsigned int | Dim2 | ||
) |
|
overridevirtual |
Set width, e.g. when reading from a file.
Implements itk::OctreeBase.
|
private |
Definition at line 224 of file itkOctree.h.
|
private |
Definition at line 222 of file itkOctree.h.
|
private |
Definition at line 226 of file itkOctree.h.
|
private |
Definition at line 216 of file itkOctree.h.
|
private |
Definition at line 225 of file itkOctree.h.
|
private |
Definition at line 223 of file itkOctree.h.
|
private |
Definition at line 220 of file itkOctree.h.