code: def load_mesh(file_obj,
                file_type=None,
                resolver=None,
                **kwargs):
      
  
      # parse the file arguments into clean loadable form
      (file_obj,  # file- like object
       file_type,  # str, what kind of file
       metadata,  # dict, any metadata from file name
       opened,    # bool, did we open the file ourselves
       resolver   # object to load referenced resources
       ) = parse_file_args(file_obj=file_obj,
                           file_type=file_type,
                           resolver=resolver)
  
      try:
          # make sure we keep passed kwargs to loader
          # but also make sure loader keys override passed keys
          results = mesh_loaders[file_type](file_obj,
                                            file_type=file_type,
                                            resolver=resolver,
                                            **kwargs)
  
          if util.is_file(file_obj):
              file_obj.close()
  
          log.debug('loaded mesh using %s',
                    mesh_loaders[file_type].__name__)
  
          if not isinstance(results, list):
              results = [results]
  
          loaded = []
          for result in results:
              kwargs.update(result)
              loaded.append(load_kwargs(kwargs))
              loaded[-1].metadata.update(metadata)
          if len(loaded) == 1:
              loaded = loaded[0]
      finally:
          # if we failed to load close file
          if opened:
              file_obj.close()
  
      return loaded
docs: Load a mesh file into a Trimesh object
  
      Parameters
      -----------
      file_obj : str or file object
        File name or file with mesh data
      file_type : str or None
        Which file type, e.g. 'stl'
      kwargs : dict
        Passed to Trimesh constructor
  
      Returns
      ----------
      mesh : trimesh.Trimesh or trimesh.Scene
        Loaded geometry data