3d pdf

From PyMOLWiki
Revision as of 09:16, 3 March 2013 by Tlinnet (talk | contribs) (Linux install)
Jump to: navigation, search


PyMOL can convert to formats (vrml2 and idtf) that can be converted to a 3D PDF (will not work with most PDF browser plugins; must be downloaded and viewed with certain viewers liked Adobe Acrobat 9.2+).


Get IDFT file from PyMOL

  • Save your molecule to an IDTF file in PyMOL:
save pymol.idtf, *

PyMOL will print a line that looks like:

 3Daac=20.0, 3Droll=0, 3Dc2c=0 0 1, 3Droo=62.45, 3Dcoo=0 0 -62.45

copy this line into the pymol.tex file overwriting the same line in the file.

Convert the IDTF to U3D

  1. Download Universal 3D Sample Software - u3d converter - IDTF to U3D, and extract to Desktop or C:\Program Files.
  2. Navigate to the bin folder: \Desktop\U3D_A_061228_5\Bin\Win32\Release
  3. Copy pymol.idtf in here.
  4. Hold shift key, right click in folder, click Open command window here.

Then copy this inot command window:

IDTFConverter -input pymol.idtf -output pymol.u3d

Copy the pymol.u3d into your LaTeX folder

LaTeX code

  • The following LaTeX code saved as "pymol.tex":
\title{PyMOL 3D Objects in PDF}
\author{Jason Vertrees}
toolbar, %same as `controls'
% replace the next line with what PyMOL output
3Daac=20.0, 3Droll=0, 3Dc2c=0 0 1, 3Droo=243.39, 3Dcoo=0 0 -243.39
\caption{A PyMOL object embedded in PDF, using U3D data format.}
  • Create the PDF using LaTeX:
 pdflatex pymol.tex


  • Currently you have to compile the u3d converter on Linux. I did that with:
cmake .

which created "IDTFConverter" that I used above.

Linux install

unzip U3D_A_061228_5.zip
cd ~/Downloads/U3D_A_061228_5/Bin/Win32/Release/
chmod +x IDTFConverter.exe
alias IDTFConverter $PWD/IDTFConverter.exe

  • Some versions of Acrobat on Linux incorrectly parse the 3D data. Adobe knows about this and plans to fix it. Ironically, I created a 3D PDF on Linux but could only view it on Mac OS X.

More on 3D PDFs

See Also