code: def line_locate_point(line, other, normalized=False, **kwargs):
      """Returns the distance to the line origin of given point.
  
      If given point does not intersect with the line, the point will first be
      projected onto the line after which the distance is taken.
  
      Parameters
      ----------
      line : Geometry or array_like
      point : Geometry or array_like
      normalized : bool, default False
          If True, the distance is a fraction of the total
          line length instead of the absolute distance.
      **kwargs
          See :ref:`NumPy ufunc docs <ufuncs.kwargs>` for other keyword arguments.
  
      Examples
      --------
      >>> from shapely import LineString, Point
      >>> line = LineString([(0, 2), (0, 10)])
      >>> point = Point(4, 4)
      >>> line_locate_point(line, point)
      2.0
      >>> line_locate_point(line, point, normalized=True)
      0.25
      >>> line_locate_point(line, Point(0, 18))
      8.0
      >>> line_locate_point(LineString(), point)
      nan
      """
      if normalized:
          return lib.line_locate_point_normalized(line, other)
      else:
          return lib.line_locate_point(line, other)
  
file_path: shapely/shapely/linear.py
imports: from shapely import lib
  from shapely.decorators import multithreading_enabled
  from shapely.errors import UnsupportedGEOSVersionError
label_desc: Use image node_id 2 for calling a global function with example usage: line_locate_point(line, other, normalized) and returns: lib, lib