void meshOctreeCube::findLeaves(LongList<meshOctreeCube*>& leaves) const { if( this->isLeaf() ) { meshOctreeCube* oc = const_cast<meshOctreeCube*>(this); cubeLabel_ = leaves.size(); leaves.append(oc); } else { cubeLabel_ = -1; for(label scI=0;scI<8;++scI) { const meshOctreeCube* scPtr = subCubesPtr_[scI]; if( scPtr ) scPtr->findLeaves(leaves); } } }
void meshOctreeCube::findCoordinatesOfMissingCubes ( LongList<meshOctreeCubeCoordinates>& coordinates ) const { if( this->isLeaf() ) return; for(label scI=0;scI<8;++scI) { meshOctreeCube* scPtr = subCubesPtr_[scI]; if( scPtr ) { scPtr->findCoordinatesOfMissingCubes(coordinates); } else { coordinates.append(this->refineForPosition(scI)); } } }