52 label cellInOrder = 0;
69 label currentCell = -1;
77 if (cellCellAddressing[cellI].size() < minWeight)
79 minWeight = cellCellAddressing[cellI].
size();
86 if (currentCell == -1)
96 nextCell.
append(currentCell);
103 while (nextCell.size())
107 if (!visited[currentCell])
109 visited[currentCell] = 1;
112 newOrder[cellInOrder] = currentCell;
116 const labelList& neighbours = cellCellAddressing[currentCell];
126 label nbr = neighbours[nI];
131 weights.
append(cellCellAddressing[nbr].size());
159 label start = offsets[cellI];
160 label end = offsets[cellI+1];
162 for (
label faceI = start; faceI < end; faceI++)
165 numNbrs[cellCells[faceI]]++;
177 label cellInOrder = 0;
194 label currentCell = -1;
202 if (numNbrs[cellI] < minWeight)
204 minWeight = numNbrs[cellI];
211 if (currentCell == -1)
221 nextCell.
append(currentCell);
228 while (nextCell.size())
232 if (!visited[currentCell])
234 visited[currentCell] = 1;
237 newOrder[cellInOrder] = currentCell;
246 label start = offsets[currentCell];
247 label end = offsets[currentCell+1];
249 for (
label faceI = start; faceI < end; faceI++)
251 label nbr = cellCells[faceI];
256 weights.
append(numNbrs[nbr]);