code: def test_mesh_face_picking():
      vertices, faces, _ = create_plane(125, 125)
      vertices = vertices["position"]
      vertices[:, :2] += 125 / 2
      mesh = Mesh(vertices=vertices, faces=faces)
      filter = FacePickingFilter()
      mesh.attach(filter)
  
      with TestingCanvas(size=(125, 125)) as c:
          view = c.central_widget.add_view()
          view.add(mesh)
          filter.enabled = True
          mesh.update_gl_state(blend=False)
          picking_render = c.render(bgcolor=(0, 0, 0, 0), alpha=True)
  
      # unpack the IDs
      ids = picking_render.view(np.uint32)
      # the plane is made up of two triangles and nearly fills the view
      # pick one point on each triangle
      assert ids[125 // 2, 125 // 4] == 1
      assert ids[125 // 2, 3 * 125 // 4] == 2
  
file_path: vispy/vispy/visuals/filters/tests/test_primitive_picking_filters.py
imports: import numpy
  from vispy.geometry import create_plane
  from vispy.scene.visuals import Markers, Mesh
  from vispy.testing import requires_application, TestingCanvas
  from vispy.visuals.filters import FacePickingFilter, MarkerPickingFilter
label_desc: Use image node_id 2 for calling a global function with example usage: test_mesh_face_picking() without return types