code: def longest_ray(mesh, points, directions):
      
      points = np.asanyarray(points, dtype=np.float64)
      if not util.is_shape(points, (-1, 3)):
          raise ValueError('points must be (n,3)!')
  
      directions = np.asanyarray(directions, dtype=np.float64)
      if not util.is_shape(directions, (-1, 3)):
          raise ValueError('directions must be (n,3)!')
  
      if len(points) != len(directions):
          raise ValueError('number of points must equal number of directions!')
  
      faces, rays, locations = mesh.ray.intersects_id(points, directions,
                                                      return_locations=True,
                                                      multiple_hits=True)
      if len(rays) > 0:
          distances = np.linalg.norm(locations - points[rays],
                                     axis=1)
      else:
          distances = np.array([])
  
      # Reject intersections at distance less than tol.planar
      rays = rays[distances > tol.planar]
      distances = distances[distances > tol.planar]
  
      # Add infinite length for those with no valid intersection
      no_intersections = np.setdiff1d(np.arange(len(points)), rays)
      rays = np.concatenate((rays, no_intersections))
      distances = np.concatenate((distances,
                                  np.repeat(np.inf,
                                            len(no_intersections))))
      return group_min(rays, distances)
docs: Find the lengths of the longest rays which do not intersect the mesh
      cast from a list of points in the provided directions.
  
      Parameters
      -----------
      points : (n,3) float, list of points in space
      directions : (n,3) float, directions of rays
  
      Returns
      ----------
      signed_distance : (n,) float, length of rays