code: def translate(surf, center, direction):
      
      normx = np.array(direction)/np.linalg.norm(direction)
      normz = np.cross(normx, [0, 1.0, 0.0000001])
      normz /= np.linalg.norm(normz)
      normy = np.cross(normz, normx)
  
      trans = np.zeros((4, 4))
      trans[:3, 0] = normx
      trans[:3, 1] = normy
      trans[:3, 2] = normz
      trans[3, 3] = 1
  
      surf.transform(trans)
      surf.points += np.array(center)
docs: Translates and orientates a mesh centered at the origin and
      facing in the x direction to a new center and direction