72 return ((b.
x == this->x) && (b.
y == this->y) && (b.
z == this->z));
93 return ((b.
x >= this->x) && (b.
y >= this->y) && (b.
z >= this->z));
103 return ((b.
x <= this->x) && (b.
y <= this->y) && (b.
z <= this->z));
112 this->
x = (this->
x << 1) | (!!(childIndex & (1 << 2)));
113 this->
y = (this->
y << 1) | (!!(childIndex & (1 << 1)));
114 this->
z = (this->
z << 1) | (!!(childIndex & (1 << 0)));
134 return static_cast<unsigned char>(((!!(this->
x & depthMask)) << 2) |
135 ((!!(this->
y & depthMask)) << 1) |
136 (!!(this->
z & depthMask)));
141 static_cast<unsigned char>(
sizeof(
uindex_t) * 8);
void popBranch()
pop child node from octree key
bool operator==(const OctreeKey &b) const
Operator== for comparing octree keys with each other.
OctreeKey(uindex_t keyX, uindex_t keyY, uindex_t keyZ)
Constructor for key initialization.
bool operator!=(const OctreeKey &other) const
Inequal comparison operator.
OctreeKey & operator=(const OctreeKey &)=default
bool operator<=(const OctreeKey &b) const
Operator<= for comparing octree keys with each other.
OctreeKey(const OctreeKey &source)
Copy constructor.
bool operator>=(const OctreeKey &b) const
Operator>= for comparing octree keys with each other.
static const unsigned char maxDepth
OctreeKey()
Empty constructor.
void pushBranch(unsigned char childIndex)
push a child node to the octree key
unsigned char getChildIdxWithDepthMask(uindex_t depthMask) const
get child node index using depthMask
detail::int_type_t< detail::index_type_size, false > uindex_t
Type used for an unsigned index in PCL.