code: def point_to_t(self, point):
          
  
          # Single-precision floats have only 7 significant figures of
          # resolution, so test that we're within 6 sig figs.
          if np.isclose(point, self.start, rtol=0, atol=1e-6):
              return 0.0
          elif np.isclose(point, self.end, rtol=0, atol=1e-6):
              return 1.0
  
          # Finding the point "by hand" here is much faster than calling
          # radialrange(), see the discussion on PR #40:
          # https://github.com/mathandy/svgpathtools/pull/40#issuecomment-358134261
  
          p = self.poly()
          # p(t) = (p_1 * t) + p_0 = point
          # t = (point - p_0) / p_1
          t = (point - p[0]) / p[1]
          if np.isclose(t.imag, 0) and (t.real >= 0.0) and (t.real <= 1.0):
              return t.real
          return None
docs: If the point lies on the Line, returns its `t` parameter.
          If the point does not lie on the Line, returns None.