Skip to content

VTK-m ClipWithField result does not match with VTK Clip output

The output of a clipping operation (using a scalar) is different between VTK and VTK-m. An unfortunate consequence of this is that by applying ClipWithField twice on the same dataset, using the same threshold value but switching the "invert" option, and then merging the results, the final dataset has some holes w.r.t. the original surface (which doesn't happen in VTK).

This can be seen in ParaView, opening this dataset (vtkDataSet_2D.vtk) and applying both the VTK and VTK-m clipping filters on the 'isosurf' channel (e.g. with a threshold value of 0.01). The issue happens with VTK-m 1.9.0 and 2.0.0, haven't tried with the new 2.1.0 but I don't see anything related to this in the release notes.

Output of VTK clip: image

Output of VTK-m ClipWithField: image