code: def identify_segments(self):
          
  
          i1 = np.sort([self._simplices[:,0], self._simplices[:,1]], axis=0)
          i2 = np.sort([self._simplices[:,0], self._simplices[:,2]], axis=0)
          i3 = np.sort([self._simplices[:,1], self._simplices[:,2]], axis=0)
  
          a = np.hstack([i1, i2, i3]).T
  
          # find unique rows in numpy array
          # <http://stackoverflow.com/questions/16970982/find-unique-rows-in-numpy-array>
          b = np.ascontiguousarray(a).view(np.dtype((np.void, a.dtype.itemsize * a.shape[1])))
          segments = np.unique(b).view(a.dtype).reshape(-1, a.shape[1])
  
          return self._deshuffle_simplices(segments)
docs: Find all the segments in the triangulation and return an
          array of vertices (n1,n2) where n1 < n2