code: def pil_image3d(input, size=(800, 600), pcb_rotate=(0, 0, 0), timeout=20, showgui=False):
      '''
      same as export_image3d, but there is no output file, PIL object is returned instead
      '''
      f = tempfile.NamedTemporaryFile(suffix='.png', prefix='eagexp_')
      output = f.name
  
      export_image3d(input, output=output, size=size,
                     pcb_rotate=pcb_rotate, timeout=timeout, showgui=showgui)
  
      im = Image.open(output)
      return if pil_image3d(input, size=(800, 600), pcb_rotate=(0, 0, 0), timeout=20, showgui=False):
      '''
      same as export_image3d, but there is no output file, PIL object is returned instead
      '''
      f = tempfile.NamedTemporaryFile(suffix='.png', prefix='eagexp_')
      output = f.name
  
      export_image3d(input, output=output, size=size,
                     pcb_rotate=pcb_rotate, timeout=timeout, showgui=showgui)
  
      im = Image.open(output)
      return im
docs: same as export_image3d, but there is no output file, PIL object is returned instead