docs: def create_rectangular_prism(origin, size):
      '''
      Return a Mesh which is an axis-aligned rectangular prism. One vertex is
      `origin`; the diametrically opposite vertex is `origin + size`.
  
      size: 3x1 array.
  
      '''
      from lace.topology import quads_to_tris
  
      lower_base_plane = np.array([
          # Lower base plane
          origin,
          origin + np.array([size[0], 0, 0]),
          origin + np.array([size[0], 0, size[2]]),
          origin + np.array([0, 0, size[2]]),
      ])
      upper_base_plane = lower_base_plane + np.array([0, size[1], 0])
  
      vertices = np.vstack([lower_base_plane, upper_base_plane])
  
      faces = quads_to_tris(np.array([
          [0, 1, 2, 3],  # lower base (-y)
          [7, 6, 5, 4],  # upper base (+y)
          [4, 5, 1, 0],  # +z face
          [5, 6, 2, 1],  # +x face
          [6, 7, 3, 2],  # -z face
          [3, 7, 4, 0],  # -x face
      ]))
  
      return Mesh(v=vertices, f=faces)