----------------------------------------------------------------------------
| 1653 | |
| 1654 | //---------------------------------------------------------------------------- |
| 1655 | bool vtkUnstructuredGrid::IsCellBoundary( |
| 1656 | vtkIdType cellId, vtkIdType npts, const vtkIdType* pts, vtkIdType& neighborCellId) |
| 1657 | { |
| 1658 | // Ensure that a valid neighborhood request is made. |
| 1659 | if (npts <= 0) |
| 1660 | { |
| 1661 | return false; |
| 1662 | } |
| 1663 | |
| 1664 | // Ensure that cell links are available. |
| 1665 | if (!this->Links) |
| 1666 | { |
| 1667 | this->BuildLinks(); |
| 1668 | } |
| 1669 | |
| 1670 | // Get the links (cells that use each point) depending on the editable |
| 1671 | // state of this object. |
| 1672 | if (!this->Editable) |
| 1673 | { |
| 1674 | using CellLinksType = vtkStaticCellLinks; |
| 1675 | using TIsCellBoundary = IsCellBoundaryImpl<CellLinksType>; |
| 1676 | auto links = static_cast<CellLinksType*>(this->Links.Get()); |
| 1677 | bool result; |
| 1678 | this->Connectivity->Dispatch( |
| 1679 | TIsCellBoundary{}, links, cellId, npts, pts, neighborCellId, result); |
| 1680 | return result; |
| 1681 | } |
| 1682 | else |
| 1683 | { |
| 1684 | using CellLinksType = vtkCellLinks; |
| 1685 | using TIsCellBoundary = IsCellBoundaryImpl<CellLinksType>; |
| 1686 | auto links = static_cast<CellLinksType*>(this->Links.Get()); |
| 1687 | bool result; |
| 1688 | this->Connectivity->Dispatch( |
| 1689 | TIsCellBoundary{}, links, cellId, npts, pts, neighborCellId, result); |
| 1690 | return result; |
| 1691 | } |
| 1692 | } |
| 1693 | |
| 1694 | //---------------------------------------------------------------------------- |
| 1695 | // Return the cells that use all of the ptIds provided. This is a set |
no test coverage detected