MCPcopy Create free account
hub / github.com/Kitware/VTK / GetCellNeighbors

Method GetCellNeighbors

Common/DataModel/vtkUnstructuredGrid.cxx:1698–1731  ·  view source on GitHub ↗

---------------------------------------------------------------------------- Return the cells that use all of the ptIds provided. This is a set (intersection) operation - it can have significant performance impacts on certain filters like vtkGeometryFilter.

Source from the content-addressed store, hash-verified

1696// (intersection) operation - it can have significant performance impacts on
1697// certain filters like vtkGeometryFilter.
1698void vtkUnstructuredGrid::GetCellNeighbors(
1699 vtkIdType cellId, vtkIdType npts, const vtkIdType* pts, vtkIdList* cellIds)
1700{
1701 // Empty the list
1702 cellIds->Reset();
1703
1704 // Ensure that a proper neighborhood request is made.
1705 if (npts <= 0)
1706 {
1707 return;
1708 }
1709
1710 // Ensure that links are built.
1711 if (!this->Links)
1712 {
1713 this->BuildLinks();
1714 }
1715
1716 // Get the cell links based on the current state.
1717 if (!this->Editable)
1718 {
1719 using CellLinksType = vtkStaticCellLinks;
1720 using TGetCellNeighbors = GetCellNeighborsImpl<CellLinksType>;
1721 auto links = static_cast<CellLinksType*>(this->Links.Get());
1722 this->Connectivity->Dispatch(TGetCellNeighbors{}, links, cellId, npts, pts, cellIds);
1723 }
1724 else
1725 {
1726 using CellLinksType = vtkCellLinks;
1727 using TGetCellNeighbors = GetCellNeighborsImpl<CellLinksType>;
1728 auto links = static_cast<CellLinksType*>(this->Links.Get());
1729 this->Connectivity->Dispatch(TGetCellNeighbors{}, links, cellId, npts, pts, cellIds);
1730 }
1731}
1732
1733//------------------------------------------------------------------------------
1734int vtkUnstructuredGrid::GetCellNumberOfFaces(

Callers

nothing calls this directly

Calls 4

BuildLinksMethod · 0.95
ResetMethod · 0.45
GetMethod · 0.45
DispatchMethod · 0.45

Tested by

no test coverage detected