74 return ((b.
x == this->x) && (b.
y == this->y) && (b.
z == this->z));
95 return ((b.
x >= this->x) && (b.
y >= this->y) && (b.
z >= this->z));
105 return ((b.
x <= this->x) && (b.
y <= this->y) && (b.
z <= this->z));
114 this->
x = (this->
x << 1) | (!!(childIndex & (1 << 2)));
115 this->
y = (this->
y << 1) | (!!(childIndex & (1 << 1)));
116 this->
z = (this->
z << 1) | (!!(childIndex & (1 << 0)));
136 return static_cast<unsigned char>(((!!(this->
x & depthMask)) << 2) |
137 ((!!(this->
y & depthMask)) << 1) |
138 (!!(this->
z & depthMask)));
143 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.
Defines basic non-point types used by PCL.