code: def _compute_path_undirected(self, coordst, sizes, trans_inv, curved):
      path = {"vertices": [], "codes": []}
      path["codes"].append("MOVETO")
      if not curved:
          path["codes"].append("LINETO")
  
          # Start
          theta = atan2(*((coordst[1] - coordst[0])[::-1]))
          voff = 0 * coordst[0]
          voff[:] = [cos(theta), sin(theta)]
          voff *= sizes[0] / 2
          path["vertices"].append(coordst[0] + voff)
  
          # End
          voff[:] = [cos(theta), sin(theta)]
          voff *= sizes[1] / 2
          path["vertices"].append(coordst[1] - voff)
      else:
          path["codes"].extend(["CURVE4"] * 3)
  
          aux1, aux2 = get_bezier_control_points_for_curved_edge(
              *coordst.ravel(),
              curved,
          )
  
          # Start
          theta = atan2(*((aux1 - coordst[0])[::-1]))
          voff = 0 * coordst[0]
          voff[:] = [cos(theta), sin(theta)]
          voff *= sizes[0] / 2
          path["vertices"].append(coordst[0] + voff)
  
          # Bezier
          path["vertices"].append(aux1)
          path["vertices"].append(aux2)
  
          # End
          theta = atan2(*((coordst[1] - aux2)[::-1]))
          voff = 0 * coordst[0]
          voff[:] = [cos(theta), sin(theta)]
          voff *= sizes[1] / 2
          path["vertices"].append(coordst[1] - voff)
  
          # This is a dirty trick to make the facecolor work
          # without making a separate Patch, which would be a little messy
          path["codes"].extend(["CURVE4"] * 3)
          path["vertices"].extend(path["vertices"][-2::-1])
  
      path = mpl.path.Path(
          path["vertices"],
          codes=[getattr(mpl.path.Path, x) for x in path["codes"]],
      )
      path.vertices = trans_inv(path.vertices)
      return path
  
imports: from math import atan2, cos, pi, sin
  from igraph.drawing.baseclasses import AbstractEdgeDrawer
  from igraph.drawing.metamagic import AttributeCollectorBase
  from igraph.drawing.matplotlib.utils import find_matplotlib
  from igraph.drawing.utils import get_bezier_control_points_for_curved_edge, FakeModule
label_desc: Use image node_id 6 for calling the EdgeCollection obj's underlying member method code with example usage: obj._compute_path_undirected(coordst, sizes, trans_inv, curved) and returns: path