Note
Go to the end to download the full example code.
Working with glTF Files#
Import a glTF file directly into a PyVista plotting scene. For more details regarding the glTF format, see: https://www.khronos.org/gltf/
First, download the examples. Note that here we’re using a high dynamic range texture since glTF files generally contain physically based rendering and VTK v9 supports high dynamic range textures.
from __future__ import annotations
import pyvista
from pyvista import examples
helmet_file = examples.gltf.download_damaged_helmet()
texture = examples.download_dikhololo_night()
Set up the plotter and enable environment textures. This works well
for physically based rendering enabled meshes like the damaged
helmet example. Use pyvista.Plotter.import_gltf()
to import file.
pl = pyvista.Plotter()
pl.import_gltf(helmet_file)
pl.set_environment_texture(texture)
pl.camera.zoom(1.7)
pl.show()
You can also directly read in gltf files and extract the underlying mesh.
block = pyvista.read(helmet_file)
mesh = block[0][0][0]
mesh.plot(color='lightblue', show_edges=True, cpos='xy')
Total running time of the script: (0 minutes 13.770 seconds)