code: def _get_item(self, index):
      if index in self.cache:
          point_set, cls = self.cache[index]
      else:
          fn = self.datapath[index]
          cls = self.classes[self.datapath[index][0]]
          cls = np.array([cls]).astype(np.int32)
          point_set = np.loadtxt(fn[1], delimiter=",").astype(
              np.float32
          )
          if self.fps:
              point_set = farthest_point_sample(point_set, self.npoints)
          else:
              point_set = point_set[0 : self.npoints, :]
  
          point_set[:, 0:3] = pc_normalize(point_set[:, 0:3])
  
          if not self.normal_channel:
              point_set = point_set[:, 0:3]
  
          if len(self.cache) < self.cache_size:
              self.cache[index] = (point_set, cls)
  
      return point_set, cls
  
file_path: dgl/examples/pytorch/pointcloud/bipointnet/ModelNetDataLoader.py
imports: import os
  import warnings
  import numpy
  from torch.utils.data import Dataset
label_desc: Use image node_id 3 for calling the ModelNetDataLoader obj's underlying member method code with example usage: obj._get_item(index) and returns: point_set,  cls