vtkGhostCellsGenerator: input ghost peeling optim for polydata
When an input poly data has ghosts, there used to be a deep copy of the input into a temporary with its ghosts peeled off (calling RemoveGhosts). This commit gets rid of this temporary and directly maps the output cells and points with ghosts removed to the input cells and points.
Note: Since poly data and unstructured grids share a lot of code, the
code also exists for unstructured grids. However, it has never been
tested with input ghosts and cannot actually be run because ghosts are
still removed prior to calling the ghost cells generator pipeline.
This is because currently, the filter extracting the interfaces of the
inputs doesn't handle ghost cells as this filter would need them to be
handled. When vtkDataSetSurfaceFilter
or vtkGeometryFilter
can
extract a surface in the same way vtkFeatureEdges
does it (by simply
skipping ghost cells in the input), this optimization can be added for
unstructured grids (and some debugging performed, if needed).