code: def surface_constructor(surface):
      
      if NO_IMAGES:
          return
  
      ax = surface.plot(256, with_nodes=True)
      line = ax.lines[0]
      nodes = surface._nodes
      add_patch(ax, nodes[:, (0, 1, 2, 5)], line.get_color())
      delta = 1.0 / 32.0
      ax.text(
          nodes[0, 0],
          nodes[1, 0],
          r"$v_0$",
          fontsize=20,
          verticalalignment="top",
          horizontalalignment="right",
      )
      ax.text(
          nodes[0, 1],
          nodes[1, 1],
          r"$v_1$",
          fontsize=20,
          verticalalignment="top",
          horizontalalignment="center",
      )
      ax.text(
          nodes[0, 2],
          nodes[1, 2],
          r"$v_2$",
          fontsize=20,
          verticalalignment="top",
          horizontalalignment="left",
      )
      ax.text(
          nodes[0, 3] - delta,
          nodes[1, 3],
          r"$v_3$",
          fontsize=20,
          verticalalignment="center",
          horizontalalignment="right",
      )
      ax.text(
          nodes[0, 4] + delta,
          nodes[1, 4],
          r"$v_4$",
          fontsize=20,
          verticalalignment="center",
          horizontalalignment="left",
      )
      ax.text(
          nodes[0, 5],
          nodes[1, 5] + delta,
          r"$v_5$",
          fontsize=20,
          verticalalignment="bottom",
          horizontalalignment="center",
      )
      ax.axis("scaled")
      ax.set_xlim(-0.125, 1.125)
      ax.set_ylim(-0.125, 1.125)
      save_image(ax.figure, "surface_constructor.png")
docs: Image for :class`.Surface` docstring.