Point Cloud Library (PCL)  1.14.1-dev
List of all members | Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes
pcl::poisson::OctNode< NodeData, Real > Class Template Reference

#include <pcl/surface/3rdparty/poisson4/octree_poisson.h>

+ Inheritance diagram for pcl::poisson::OctNode< NodeData, Real >:
+ Collaboration diagram for pcl::poisson::OctNode< NodeData, Real >:

Classes

class  ConstNeighborKey3
 
class  ConstNeighborKey5
 
class  ConstNeighbors3
 
class  ConstNeighbors5
 
class  NeighborKey3
 
class  NeighborKey5
 
class  Neighbors3
 
class  Neighbors5
 

Public Member Functions

 OctNode (void)
 
 ~OctNode (void)
 
int initChildren (void)
 
void depthAndOffset (int &depth, int offset[DIMENSION]) const
 
int depth (void) const
 
void centerAndWidth (Point3D< Real > &center, Real &width) const
 
bool isInside (Point3D< Real > p) const
 
int leaves (void) const
 
int maxDepthLeaves (int maxDepth) const
 
int nodes (void) const
 
int maxDepth (void) const
 
const OctNoderoot (void) const
 
const OctNodenextLeaf (const OctNode *currentLeaf=NULL) const
 
OctNodenextLeaf (OctNode *currentLeaf=NULL)
 
const OctNodenextNode (const OctNode *currentNode=NULL) const
 
OctNodenextNode (OctNode *currentNode=NULL)
 
const OctNodenextBranch (const OctNode *current) const
 
OctNodenextBranch (OctNode *current)
 
const OctNodeprevBranch (const OctNode *current) const
 
OctNodeprevBranch (OctNode *current)
 
void setFullDepth (int maxDepth)
 
void printLeaves (void) const
 
void printRange (void) const
 
template<class NodeAdjacencyFunction >
void processNodeFaces (OctNode *node, NodeAdjacencyFunction *F, int fIndex, int processCurrent=1)
 
template<class NodeAdjacencyFunction >
void processNodeEdges (OctNode *node, NodeAdjacencyFunction *F, int eIndex, int processCurrent=1)
 
template<class NodeAdjacencyFunction >
void processNodeCorners (OctNode *node, NodeAdjacencyFunction *F, int cIndex, int processCurrent=1)
 
template<class NodeAdjacencyFunction >
void processNodeNodes (OctNode *node, NodeAdjacencyFunction *F, int processCurrent=1)
 
OctNodefaceNeighbor (int faceIndex, int forceChildren=0)
 
const OctNodefaceNeighbor (int faceIndex) const
 
OctNodeedgeNeighbor (int edgeIndex, int forceChildren=0)
 
const OctNodeedgeNeighbor (int edgeIndex) const
 
OctNodecornerNeighbor (int cornerIndex, int forceChildren=0)
 
const OctNodecornerNeighbor (int cornerIndex) const
 
OctNodegetNearestLeaf (const Point3D< Real > &p)
 
const OctNodegetNearestLeaf (const Point3D< Real > &p) const
 
template<class NodeData2 >
OctNodeoperator= (const OctNode< NodeData2, Real > &node)
 
int write (const char *fileName) const
 
int write (FILE *fp) const
 
int read (const char *fileName)
 
int read (FILE *fp)
 
void centerIndex (int maxDepth, int index[DIMENSION]) const
 
int width (int maxDepth) const
 
template<class NodeAdjacencyFunction >
void ProcessNodeAdjacentNodes (int dx, int dy, int dz, OctNode< NodeData, Real > *node1, int radius1, OctNode< NodeData, Real > *node2, int radius2, int width2, NodeAdjacencyFunction *F, int processCurrent)
 
template<class TerminatingNodeAdjacencyFunction >
void ProcessTerminatingNodeAdjacentNodes (int dx, int dy, int dz, OctNode< NodeData, Real > *node1, int radius1, OctNode< NodeData, Real > *node2, int radius2, int width2, TerminatingNodeAdjacencyFunction *F, int processCurrent)
 
template<class PointAdjacencyFunction >
void ProcessPointAdjacentNodes (int dx, int dy, int dz, OctNode< NodeData, Real > *node2, int radius2, int width2, PointAdjacencyFunction *F, int processCurrent)
 
template<class NodeAdjacencyFunction >
void ProcessFixedDepthNodeAdjacentNodes (int maxDepth, OctNode< NodeData, Real > *node1, int width1, OctNode< NodeData, Real > *node2, int width2, int depth, NodeAdjacencyFunction *F, int processCurrent)
 
template<class NodeAdjacencyFunction >
void ProcessFixedDepthNodeAdjacentNodes (int dx, int dy, int dz, OctNode< NodeData, Real > *node1, int radius1, OctNode< NodeData, Real > *node2, int radius2, int width2, int depth, NodeAdjacencyFunction *F, int processCurrent)
 
template<class NodeAdjacencyFunction >
void ProcessMaxDepthNodeAdjacentNodes (int maxDepth, OctNode< NodeData, Real > *node1, int width1, OctNode< NodeData, Real > *node2, int width2, int depth, NodeAdjacencyFunction *F, int processCurrent)
 
template<class NodeAdjacencyFunction >
void ProcessMaxDepthNodeAdjacentNodes (int dx, int dy, int dz, OctNode< NodeData, Real > *node1, int radius1, OctNode< NodeData, Real > *node2, int radius2, int width2, int depth, NodeAdjacencyFunction *F, int processCurrent)
 
template<class NodeData2 >
OctNode< NodeData, Real > & operator= (const OctNode< NodeData2, Real > &node)
 

Static Public Member Functions

static int UseAllocator (void)
 
static void SetAllocator (int blockSize)
 
static void DepthAndOffset (const long long &index, int &depth, int offset[DIMENSION])
 
static void CenterAndWidth (const long long &index, Point3D< Real > &center, Real &width)
 
static int Depth (const long long &index)
 
static void Index (int depth, const int offset[3], short &d, short off[DIMENSION])
 
template<class NodeAdjacencyFunction >
static void ProcessNodeAdjacentNodes (int maxDepth, OctNode *node1, int width1, OctNode *node2, int width2, NodeAdjacencyFunction *F, int processCurrent=1)
 
template<class NodeAdjacencyFunction >
static void ProcessNodeAdjacentNodes (int dx, int dy, int dz, OctNode *node1, int radius1, OctNode *node2, int radius2, int width2, NodeAdjacencyFunction *F, int processCurrent=1)
 
template<class TerminatingNodeAdjacencyFunction >
static void ProcessTerminatingNodeAdjacentNodes (int maxDepth, OctNode *node1, int width1, OctNode *node2, int width2, TerminatingNodeAdjacencyFunction *F, int processCurrent=1)
 
template<class TerminatingNodeAdjacencyFunction >
static void ProcessTerminatingNodeAdjacentNodes (int dx, int dy, int dz, OctNode *node1, int radius1, OctNode *node2, int radius2, int width2, TerminatingNodeAdjacencyFunction *F, int processCurrent=1)
 
template<class PointAdjacencyFunction >
static void ProcessPointAdjacentNodes (int maxDepth, const int center1[3], OctNode *node2, int width2, PointAdjacencyFunction *F, int processCurrent=1)
 
template<class PointAdjacencyFunction >
static void ProcessPointAdjacentNodes (int dx, int dy, int dz, OctNode *node2, int radius2, int width2, PointAdjacencyFunction *F, int processCurrent=1)
 
template<class NodeAdjacencyFunction >
static void ProcessFixedDepthNodeAdjacentNodes (int maxDepth, OctNode *node1, int width1, OctNode *node2, int width2, int depth, NodeAdjacencyFunction *F, int processCurrent=1)
 
template<class NodeAdjacencyFunction >
static void ProcessFixedDepthNodeAdjacentNodes (int dx, int dy, int dz, OctNode *node1, int radius1, OctNode *node2, int radius2, int width2, int depth, NodeAdjacencyFunction *F, int processCurrent=1)
 
template<class NodeAdjacencyFunction >
static void ProcessMaxDepthNodeAdjacentNodes (int maxDepth, OctNode *node1, int width1, OctNode *node2, int width2, int depth, NodeAdjacencyFunction *F, int processCurrent=1)
 
template<class NodeAdjacencyFunction >
static void ProcessMaxDepthNodeAdjacentNodes (int dx, int dy, int dz, OctNode *node1, int radius1, OctNode *node2, int radius2, int width2, int depth, NodeAdjacencyFunction *F, int processCurrent=1)
 
static int CornerIndex (const Point3D< Real > &center, const Point3D< Real > &p)
 
static int CommonEdge (const OctNode *node1, int eIndex1, const OctNode *node2, int eIndex2)
 
static int CompareForwardDepths (const void *v1, const void *v2)
 
static int CompareByDepthAndXYZ (const void *v1, const void *v2)
 
static int CompareByDepthAndZIndex (const void *v1, const void *v2)
 
static int CompareForwardPointerDepths (const void *v1, const void *v2)
 
static int CompareBackwardDepths (const void *v1, const void *v2)
 
static int CompareBackwardPointerDepths (const void *v1, const void *v2)
 
static int Overlap2 (const int &depth1, const int offSet1[DIMENSION], const Real &multiplier1, const int &depth2, const int offSet2[DIMENSION], const Real &multiplier2)
 

Public Attributes

OctNodeparent
 
OctNodechildren
 
short d
 
short off [DIMENSION]
 
NodeData nodeData
 

Static Public Attributes

static const int DepthShift =5
 
static const int OffsetShift =19
 
static const int OffsetShift1 =DepthShift
 
static const int OffsetShift2 =OffsetShift1+OffsetShift
 
static const int OffsetShift3 =OffsetShift2+OffsetShift
 
static const int DepthMask =(1<<DepthShift)-1
 
static const int OffsetMask =(1<<OffsetShift)-1
 
static Allocator< OctNodeinternalAllocator
 

Detailed Description

template<class NodeData, class Real = float>
class pcl::poisson::OctNode< NodeData, Real >

Definition at line 48 of file octree_poisson.h.

Constructor & Destructor Documentation

◆ OctNode()

template<class NodeData , class Real >
pcl::poisson::OctNode< NodeData, Real >::OctNode ( void  )

Definition at line 68 of file octree_poisson.hpp.

◆ ~OctNode()

template<class NodeData , class Real >
pcl::poisson::OctNode< NodeData, Real >::~OctNode ( void  )

Definition at line 74 of file octree_poisson.hpp.

Member Function Documentation

◆ CenterAndWidth()

template<class NodeData , class Real >
void pcl::poisson::OctNode< NodeData, Real >::CenterAndWidth ( const long long &  index,
Point3D< Real > &  center,
Real width 
)
inlinestatic

Definition at line 170 of file octree_poisson.hpp.

◆ centerAndWidth()

template<class NodeData , class Real >
void pcl::poisson::OctNode< NodeData, Real >::centerAndWidth ( Point3D< Real > &  center,
Real width 
) const

Definition at line 149 of file octree_poisson.hpp.

References pcl::poisson::Point3D< Real >::coords.

◆ centerIndex()

template<class NodeData , class Real >
void pcl::poisson::OctNode< NodeData, Real >::centerIndex ( int  maxDepth,
int  index[DIMENSION] 
) const

◆ CommonEdge()

template<class NodeData , class Real = float>
int pcl::poisson::OctNode< NodeData, Real >::CommonEdge ( const OctNode< NodeData, Real > *  node1,
int  eIndex1,
const OctNode< NodeData, Real > *  node2,
int  eIndex2 
)
static

◆ CompareBackwardDepths()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::CompareBackwardDepths ( const void *  v1,
const void *  v2 
)
static

Definition at line 879 of file octree_poisson.hpp.

◆ CompareBackwardPointerDepths()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::CompareBackwardPointerDepths ( const void *  v1,
const void *  v2 
)
static

Definition at line 884 of file octree_poisson.hpp.

◆ CompareByDepthAndXYZ()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::CompareByDepthAndXYZ ( const void *  v1,
const void *  v2 
)
static

◆ CompareByDepthAndZIndex()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::CompareByDepthAndZIndex ( const void *  v1,
const void *  v2 
)
static

◆ CompareForwardDepths()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::CompareForwardDepths ( const void *  v1,
const void *  v2 
)
static

Definition at line 822 of file octree_poisson.hpp.

◆ CompareForwardPointerDepths()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::CompareForwardPointerDepths ( const void *  v1,
const void *  v2 
)
static

◆ CornerIndex()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::CornerIndex ( const Point3D< Real > &  center,
const Point3D< Real > &  p 
)
static

Definition at line 797 of file octree_poisson.hpp.

References pcl::poisson::Point3D< Real >::coords.

◆ cornerNeighbor() [1/2]

template<class NodeData , class Real >
const OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::cornerNeighbor ( int  cornerIndex) const

◆ cornerNeighbor() [2/2]

template<class NodeData , class Real >
OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::cornerNeighbor ( int  cornerIndex,
int  forceChildren = 0 
)

◆ Depth()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::Depth ( const long long &  index)
inlinestatic

Definition at line 147 of file octree_poisson.hpp.

◆ depth()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::depth ( void  ) const
inline

◆ DepthAndOffset()

template<class NodeData , class Real = float>
void pcl::poisson::OctNode< NodeData, Real >::DepthAndOffset ( const long long &  index,
int &  depth,
int  offset[DIMENSION] 
)
inlinestatic

Definition at line 139 of file octree_poisson.hpp.

◆ depthAndOffset()

template<class NodeData , class Real = float>
void pcl::poisson::OctNode< NodeData, Real >::depthAndOffset ( int &  depth,
int  offset[DIMENSION] 
) const
inline

◆ edgeNeighbor() [1/2]

template<class NodeData , class Real >
const OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::edgeNeighbor ( int  edgeIndex) const

Definition at line 954 of file octree_poisson.hpp.

References pcl::poisson::Cube::FactorEdgeIndex().

◆ edgeNeighbor() [2/2]

template<class NodeData , class Real >
OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::edgeNeighbor ( int  edgeIndex,
int  forceChildren = 0 
)

◆ faceNeighbor() [1/2]

template<class NodeData , class Real >
const OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::faceNeighbor ( int  faceIndex) const

Definition at line 910 of file octree_poisson.hpp.

◆ faceNeighbor() [2/2]

template<class NodeData , class Real >
OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::faceNeighbor ( int  faceIndex,
int  forceChildren = 0 
)

Definition at line 908 of file octree_poisson.hpp.

◆ getNearestLeaf() [1/2]

template<class NodeData , class Real >
OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::getNearestLeaf ( const Point3D< Real > &  p)

◆ getNearestLeaf() [2/2]

template<class NodeData , class Real >
const OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::getNearestLeaf ( const Point3D< Real > &  p) const

◆ Index()

template<class NodeData , class Real = float>
void pcl::poisson::OctNode< NodeData, Real >::Index ( int  depth,
const int  offset[3],
short &  d,
short  off[DIMENSION] 
)
inlinestatic

Definition at line 121 of file octree_poisson.hpp.

◆ initChildren()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::initChildren ( void  )

◆ isInside()

template<class NodeData , class Real >
bool pcl::poisson::OctNode< NodeData, Real >::isInside ( Point3D< Real p) const

Definition at line 160 of file octree_poisson.hpp.

◆ leaves()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::leaves ( void  ) const

Definition at line 204 of file octree_poisson.hpp.

◆ maxDepth()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::maxDepth ( void  ) const

◆ maxDepthLeaves()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::maxDepthLeaves ( int  maxDepth) const

Definition at line 214 of file octree_poisson.hpp.

◆ nextBranch() [1/2]

template<class NodeData , class Real >
const OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::nextBranch ( const OctNode< NodeData, Real > *  current) const

◆ nextBranch() [2/2]

template<class NodeData , class Real >
OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::nextBranch ( OctNode< NodeData, Real > *  current)

◆ nextLeaf() [1/2]

template<class NodeData , class Real >
const OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::nextLeaf ( const OctNode< NodeData, Real > *  currentLeaf = NULL) const

◆ nextLeaf() [2/2]

template<class NodeData , class Real >
OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::nextLeaf ( OctNode< NodeData, Real > *  currentLeaf = NULL)

◆ nextNode() [1/2]

template<class NodeData , class Real >
const OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::nextNode ( const OctNode< NodeData, Real > *  currentNode = NULL) const

◆ nextNode() [2/2]

template<class NodeData , class Real >
OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::nextNode ( OctNode< NodeData, Real > *  currentNode = NULL)

◆ nodes()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::nodes ( void  ) const

Definition at line 194 of file octree_poisson.hpp.

Referenced by pcl::poisson::SortedTreeNodes::set().

◆ operator=() [1/2]

template<class NodeData , class Real = float>
template<class NodeData2 >
OctNode& pcl::poisson::OctNode< NodeData, Real >::operator= ( const OctNode< NodeData2, Real > &  node)

◆ operator=() [2/2]

template<class NodeData , class Real = float>
template<class NodeData2 >
OctNode<NodeData,Real>& pcl::poisson::OctNode< NodeData, Real >::operator= ( const OctNode< NodeData2, Real > &  node)

◆ Overlap2()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::Overlap2 ( const int &  depth1,
const int  offSet1[DIMENSION],
const Real multiplier1,
const int &  depth2,
const int  offSet2[DIMENSION],
const Real multiplier2 
)
inlinestatic

Definition at line 889 of file octree_poisson.hpp.

◆ prevBranch() [1/2]

template<class NodeData , class Real >
const OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::prevBranch ( const OctNode< NodeData, Real > *  current) const

◆ prevBranch() [2/2]

template<class NodeData , class Real >
OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::prevBranch ( OctNode< NodeData, Real > *  current)

Definition at line 255 of file octree_poisson.hpp.

◆ printLeaves()

template<class NodeData , class Real = float>
void pcl::poisson::OctNode< NodeData, Real >::printLeaves ( void  ) const

◆ printRange()

template<class NodeData , class Real >
void pcl::poisson::OctNode< NodeData, Real >::printRange ( void  ) const

Definition at line 305 of file octree_poisson.hpp.

References pcl::poisson::Point3D< Real >::coords.

◆ ProcessFixedDepthNodeAdjacentNodes() [1/4]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
static void pcl::poisson::OctNode< NodeData, Real >::ProcessFixedDepthNodeAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node1,
int  radius1,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
int  depth,
NodeAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ ProcessFixedDepthNodeAdjacentNodes() [2/4]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessFixedDepthNodeAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node1,
int  radius1,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
int  depth,
NodeAdjacencyFunction *  F,
int  processCurrent 
)

◆ ProcessFixedDepthNodeAdjacentNodes() [3/4]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
static void pcl::poisson::OctNode< NodeData, Real >::ProcessFixedDepthNodeAdjacentNodes ( int  maxDepth,
OctNode< NodeData, Real > *  node1,
int  width1,
OctNode< NodeData, Real > *  node2,
int  width2,
int  depth,
NodeAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ ProcessFixedDepthNodeAdjacentNodes() [4/4]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessFixedDepthNodeAdjacentNodes ( int  maxDepth,
OctNode< NodeData, Real > *  node1,
int  width1,
OctNode< NodeData, Real > *  node2,
int  width2,
int  depth,
NodeAdjacencyFunction *  F,
int  processCurrent 
)

◆ ProcessMaxDepthNodeAdjacentNodes() [1/4]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
static void pcl::poisson::OctNode< NodeData, Real >::ProcessMaxDepthNodeAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node1,
int  radius1,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
int  depth,
NodeAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ ProcessMaxDepthNodeAdjacentNodes() [2/4]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessMaxDepthNodeAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node1,
int  radius1,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
int  depth,
NodeAdjacencyFunction *  F,
int  processCurrent 
)

◆ ProcessMaxDepthNodeAdjacentNodes() [3/4]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
static void pcl::poisson::OctNode< NodeData, Real >::ProcessMaxDepthNodeAdjacentNodes ( int  maxDepth,
OctNode< NodeData, Real > *  node1,
int  width1,
OctNode< NodeData, Real > *  node2,
int  width2,
int  depth,
NodeAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ ProcessMaxDepthNodeAdjacentNodes() [4/4]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessMaxDepthNodeAdjacentNodes ( int  maxDepth,
OctNode< NodeData, Real > *  node1,
int  width1,
OctNode< NodeData, Real > *  node2,
int  width2,
int  depth,
NodeAdjacencyFunction *  F,
int  processCurrent 
)

◆ ProcessNodeAdjacentNodes() [1/3]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
static void pcl::poisson::OctNode< NodeData, Real >::ProcessNodeAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node1,
int  radius1,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
NodeAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ ProcessNodeAdjacentNodes() [2/3]

template<class NodeData , class Real = float>
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessNodeAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node1,
int  radius1,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
NodeAdjacencyFunction *  F,
int  processCurrent 
)

◆ ProcessNodeAdjacentNodes() [3/3]

template<class NodeData , class Real >
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessNodeAdjacentNodes ( int  maxDepth,
OctNode< NodeData, Real > *  node1,
int  width1,
OctNode< NodeData, Real > *  node2,
int  width2,
NodeAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ processNodeCorners()

template<class NodeData , class Real >
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::processNodeCorners ( OctNode< NodeData, Real > *  node,
NodeAdjacencyFunction *  F,
int  cIndex,
int  processCurrent = 1 
)

◆ processNodeEdges()

template<class NodeData , class Real >
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::processNodeEdges ( OctNode< NodeData, Real > *  node,
NodeAdjacencyFunction *  F,
int  eIndex,
int  processCurrent = 1 
)

Definition at line 339 of file octree_poisson.hpp.

References pcl::poisson::Cube::EdgeCorners().

◆ processNodeFaces()

template<class NodeData , class Real >
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::processNodeFaces ( OctNode< NodeData, Real > *  node,
NodeAdjacencyFunction *  F,
int  fIndex,
int  processCurrent = 1 
)

Definition at line 328 of file octree_poisson.hpp.

References pcl::poisson::Cube::FaceCorners().

◆ processNodeNodes()

template<class NodeData , class Real >
template<class NodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::processNodeNodes ( OctNode< NodeData, Real > *  node,
NodeAdjacencyFunction *  F,
int  processCurrent = 1 
)

Definition at line 321 of file octree_poisson.hpp.

◆ ProcessPointAdjacentNodes() [1/3]

template<class NodeData , class Real = float>
template<class PointAdjacencyFunction >
static void pcl::poisson::OctNode< NodeData, Real >::ProcessPointAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
PointAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ ProcessPointAdjacentNodes() [2/3]

template<class NodeData , class Real = float>
template<class PointAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessPointAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
PointAdjacencyFunction *  F,
int  processCurrent 
)

◆ ProcessPointAdjacentNodes() [3/3]

template<class NodeData , class Real >
template<class PointAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessPointAdjacentNodes ( int  maxDepth,
const int  center1[3],
OctNode< NodeData, Real > *  node2,
int  width2,
PointAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ ProcessTerminatingNodeAdjacentNodes() [1/3]

template<class NodeData , class Real = float>
template<class TerminatingNodeAdjacencyFunction >
static void pcl::poisson::OctNode< NodeData, Real >::ProcessTerminatingNodeAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node1,
int  radius1,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
TerminatingNodeAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ ProcessTerminatingNodeAdjacentNodes() [2/3]

template<class NodeData , class Real = float>
template<class TerminatingNodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessTerminatingNodeAdjacentNodes ( int  dx,
int  dy,
int  dz,
OctNode< NodeData, Real > *  node1,
int  radius1,
OctNode< NodeData, Real > *  node2,
int  radius2,
int  width2,
TerminatingNodeAdjacencyFunction *  F,
int  processCurrent 
)

◆ ProcessTerminatingNodeAdjacentNodes() [3/3]

template<class NodeData , class Real >
template<class TerminatingNodeAdjacencyFunction >
void pcl::poisson::OctNode< NodeData, Real >::ProcessTerminatingNodeAdjacentNodes ( int  maxDepth,
OctNode< NodeData, Real > *  node1,
int  width1,
OctNode< NodeData, Real > *  node2,
int  width2,
TerminatingNodeAdjacencyFunction *  F,
int  processCurrent = 1 
)
static

◆ read() [1/2]

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::read ( const char *  fileName)

Definition at line 1960 of file octree_poisson.hpp.

Referenced by pcl::poisson::OctNode< NodeData, Real >::read().

◆ read() [2/2]

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::read ( FILE *  fp)

◆ root()

template<class NodeData , class Real >
const OctNode< NodeData, Real > * pcl::poisson::OctNode< NodeData, Real >::root ( void  ) const

Definition at line 225 of file octree_poisson.hpp.

◆ SetAllocator()

template<class NodeData , class Real >
void pcl::poisson::OctNode< NodeData, Real >::SetAllocator ( int  blockSize)
static

Definition at line 54 of file octree_poisson.hpp.

◆ setFullDepth()

template<class NodeData , class Real >
void pcl::poisson::OctNode< NodeData, Real >::setFullDepth ( int  maxDepth)

Definition at line 80 of file octree_poisson.hpp.

◆ UseAllocator()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::UseAllocator ( void  )
static

Definition at line 65 of file octree_poisson.hpp.

◆ width()

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::width ( int  maxDepth) const

◆ write() [1/2]

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::write ( const char *  fileName) const

Definition at line 1944 of file octree_poisson.hpp.

Referenced by pcl::poisson::OctNode< NodeData, Real >::write().

◆ write() [2/2]

template<class NodeData , class Real >
int pcl::poisson::OctNode< NodeData, Real >::write ( FILE *  fp) const

Member Data Documentation

◆ children

template<class NodeData , class Real = float>
OctNode* pcl::poisson::OctNode< NodeData, Real >::children

◆ d

template<class NodeData , class Real = float>
short pcl::poisson::OctNode< NodeData, Real >::d

◆ DepthMask

template<class NodeData , class Real >
const int pcl::poisson::OctNode< NodeData, Real >::DepthMask =(1<<DepthShift)-1
static

Definition at line 86 of file octree_poisson.h.

◆ DepthShift

template<class NodeData , class Real >
const int pcl::poisson::OctNode< NodeData, Real >::DepthShift =5
static

Definition at line 85 of file octree_poisson.h.

◆ internalAllocator

template<class NodeData , class Real >
Allocator< OctNode< NodeData, Real > > pcl::poisson::OctNode< NodeData, Real >::internalAllocator
static

Definition at line 88 of file octree_poisson.h.

◆ nodeData

template<class NodeData , class Real = float>
NodeData pcl::poisson::OctNode< NodeData, Real >::nodeData

◆ off

template<class NodeData , class Real = float>
short pcl::poisson::OctNode< NodeData, Real >::off[DIMENSION]

◆ OffsetMask

template<class NodeData , class Real >
const int pcl::poisson::OctNode< NodeData, Real >::OffsetMask =(1<<OffsetShift)-1
static

Definition at line 86 of file octree_poisson.h.

◆ OffsetShift

template<class NodeData , class Real >
const int pcl::poisson::OctNode< NodeData, Real >::OffsetShift =19
static

Definition at line 85 of file octree_poisson.h.

◆ OffsetShift1

template<class NodeData , class Real >
const int pcl::poisson::OctNode< NodeData, Real >::OffsetShift1 =DepthShift
static

Definition at line 85 of file octree_poisson.h.

◆ OffsetShift2

template<class NodeData , class Real >
const int pcl::poisson::OctNode< NodeData, Real >::OffsetShift2 =OffsetShift1+OffsetShift
static

Definition at line 85 of file octree_poisson.h.

◆ OffsetShift3

template<class NodeData , class Real >
const int pcl::poisson::OctNode< NodeData, Real >::OffsetShift3 =OffsetShift2+OffsetShift
static

Definition at line 85 of file octree_poisson.h.

◆ parent

template<class NodeData , class Real = float>
OctNode* pcl::poisson::OctNode< NodeData, Real >::parent

The documentation for this class was generated from the following files: