MCPcopy Create free account
hub / github.com/Kitware/VTK / operator()

Method operator()

Filters/Geometry/vtkMarkBoundaryFilter.cxx:742–771  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

740 void Initialize() { this->PtIds.Local().TakeReference(vtkIdList::New()); }
741
742 void operator()(vtkIdType cellId, vtkIdType endCellId)
743 {
744 auto& ptIds = this->PtIds.Local();
745 bool isFirst = vtkSMPTools::GetSingleThread();
746 for (; cellId < endCellId; ++cellId)
747 {
748 if (isFirst)
749 {
750 this->Filter->CheckAbort();
751 }
752 if (this->Filter->GetAbortOutput())
753 {
754 break;
755 }
756 // Handle ghost cells here. Another option was used cellVis array.
757 if (this->CellGhosts && this->CellGhosts[cellId] & vtkDataSetAttributes::DUPLICATECELL)
758 { // Do not create surfaces in outer ghost cells.
759 continue;
760 }
761
762 // Get the ijk to see if this cell is on the boundary of the structured data.
763 vtkIdType faceMark;
764 int ijk[3];
765 vtkStructuredData::ComputeCellStructuredCoords(cellId, this->Dims, ijk);
766 if ((faceMark = this->ProcessCell(cellId, ijk, ptIds)) > 0)
767 { // on boundary
768 this->MarkStructuredCell(cellId, faceMark, ptIds);
769 }
770 } // for all cells in this batch
771 } // operator()
772
773 void Reduce() {}
774};

Callers

nothing calls this directly

Calls 3

ProcessCellMethod · 0.95
CheckAbortMethod · 0.80
MarkStructuredCellMethod · 0.80

Tested by

no test coverage detected