Hide Cells with Ghosting

Specify specific cells to hide when plotting.

This is a lightwieght alternative to thresholding to quickly hide cells in a mesh without creating a new mesh.

Notably, the mesh must be cast to an pyvista.UnstructuredGrid type for this to work (use the cast_to_unstructured_grid filter).

import pyvista as pv
from pyvista import examples
import numpy as np

vol = examples.load_channels()
mesh = vol.cast_to_unstructured_grid()

Decide which cells are ghosted with a criteria (feel free to adjust this or manually create this array to hide specific cells).

ghosts = np.argwhere(mesh["facies"] < 1.0)

# This will act on the mesh inplace to mark those cell indices as ghosts
mesh.remove_cells(ghosts)

Now we can plot the mesh and those cells will be hidden

mesh.plot(clim=[0,4])
ghost cells

Out:

[(534.8076211353316, 534.8076211353316, 459.80762113533166),
 (125.0, 125.0, 50.0),
 (0.0, 0.0, 1.0)]

Total running time of the script: ( 0 minutes 6.211 seconds)

Gallery generated by Sphinx-Gallery