code: def multiblock_poly():
      # format and order of data (including missing) is intentional
      mesh_a = pyvista.Sphere(center=(0, 0, 0), direction=(0, 0, -1))
      mesh_a["data_a"] = mesh_a.points[:, 0] * 10
      mesh_a["data_b"] = mesh_a.points[:, 1] * 10
      mesh_a["cell_data"] = mesh_a.cell_centers().points[:, 0]
      mesh_a.point_data.set_array(mesh_a.points[:, 2] * 10, "all_data")
  
      mesh_b = pyvista.Sphere(center=(1, 0, 0), direction=(0, 0, -1))
      mesh_b["data_a"] = mesh_b.points[:, 0] * 10
      mesh_b["data_b"] = mesh_b.points[:, 1] * 10
      mesh_b["cell_data"] = mesh_b.cell_centers().points[:, 0]
      mesh_b.point_data.set_array(mesh_b.points[:, 2] * 10, "all_data")
  
      mesh_c = pyvista.Sphere(center=(2, 0, 0), direction=(0, 0, -1))
      mesh_c.point_data.set_array(mesh_c.points, "multi-comp")
      mesh_c.point_data.set_array(mesh_c.points[:, 2] * 10, "all_data")
  
      mblock = pyvista.MultiBlock()
      mblock.append(mesh_a)
      mblock.append(mesh_b)
      mblock.append(mesh_c)
      return mblock
  
imports: from importlib import metadata
  import re
  import numpy
  from numpy.random import default_rng
  from pytest import fixture, mark, skip
  import pyvista
  from pyvista import examples
label_desc: Use image node_id 17 for calling a global function with example usage: multiblock_poly() and returns: mblock