3d pdf: Difference between revisions
Jump to navigation
Jump to search
Line 52: | Line 52: | ||
\end{document} | \end{document} | ||
</source> | </source> | ||
== LaTeX beamer presentation == | |||
<source lang="latex"> | |||
\documentclass[xcolor=dvipsnames]{beamer} | |||
\usepackage[3D]{movie15} | |||
\usepackage[UKenglish]{babel} | |||
%% See: http://www.hartwork.org/beamer-theme-matrix/ | |||
\usecolortheme[named=Brown]{structure} | |||
\usetheme{Copenhagen} | |||
\begin{document} | |||
\title{Simple Beamer Class} | |||
\author{Troels Linnet} | |||
\date{\today} | |||
\frame{\titlepage} | |||
\frame{\frametitle{Table of contents}\tableofcontents} | |||
\section{3D object} | |||
\frame{\frametitle{Pymol 3D object} | |||
\begin{figure}[!htb] | |||
\centering | |||
\includemovie[ | |||
poster, | |||
toolbar, %same as `controls' | |||
label=pymol.ud3 | |||
text=(pymol.u3d), | |||
3Dlights=CAD, | |||
% 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 | |||
]{10cm}{6cm}{pymol.u3d} | |||
\caption{A PyMOL object embedded in PDF, using U3D data format.} | |||
\label{pym:ex3d} | |||
\end{figure} | |||
} | |||
\section{Lists} | |||
\subsection{Lists I} | |||
\frame{\frametitle{Unnumbered lists} | |||
\begin{block}{My bloc} | |||
test of bloc | |||
\end{block} | |||
\begin{itemize} | |||
\item Introduction to \LaTeX | |||
\item Beamer class | |||
\end{itemize} | |||
} | |||
\end{document} | |||
</source> | |||
* Create the PDF using LaTeX: | * Create the PDF using LaTeX: | ||
pdflatex pymol.tex | pdflatex pymol.tex |
Revision as of 10:39, 3 March 2013
Overview
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+).
Requirements
- PyMOL
- Universal 3D Sample Software - u3d converter - IDTF to U3D
- LaTeX (pdflatex)
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
- Download Universal 3D Sample Software - u3d converter - IDTF to U3D, and extract to Desktop or C:\Program Files.
- Navigate to the bin folder: \Desktop\U3D_A_061228_5\Bin\Win32\Release
- Copy pymol.idtf in here.
- 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":
\documentclass[a4paper]{article}
\usepackage[3D]{movie15}
\usepackage[UKenglish]{babel}
\usepackage[colorlinks=true]{hyperref}
\begin{document}
\title{PyMOL 3D Objects in PDF}
\author{Jason Vertrees}
\maketitle
\begin{figure}[!htb]
\centering
\includemovie[
poster,
toolbar, %same as `controls'
label=pymol.ud3
text=(pymol.u3d),
3Dlights=CAD,
% 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
]{\linewidth}{\linewidth}{pymol.u3d}
\caption{A PyMOL object embedded in PDF, using U3D data format.}
\label{pym:ex3d}
\end{figure}
\end{document}
LaTeX beamer presentation
\documentclass[xcolor=dvipsnames]{beamer}
\usepackage[3D]{movie15}
\usepackage[UKenglish]{babel}
%% See: http://www.hartwork.org/beamer-theme-matrix/
\usecolortheme[named=Brown]{structure}
\usetheme{Copenhagen}
\begin{document}
\title{Simple Beamer Class}
\author{Troels Linnet}
\date{\today}
\frame{\titlepage}
\frame{\frametitle{Table of contents}\tableofcontents}
\section{3D object}
\frame{\frametitle{Pymol 3D object}
\begin{figure}[!htb]
\centering
\includemovie[
poster,
toolbar, %same as `controls'
label=pymol.ud3
text=(pymol.u3d),
3Dlights=CAD,
% 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
]{10cm}{6cm}{pymol.u3d}
\caption{A PyMOL object embedded in PDF, using U3D data format.}
\label{pym:ex3d}
\end{figure}
}
\section{Lists}
\subsection{Lists I}
\frame{\frametitle{Unnumbered lists}
\begin{block}{My bloc}
test of bloc
\end{block}
\begin{itemize}
\item Introduction to \LaTeX
\item Beamer class
\end{itemize}
}
\end{document}
- Create the PDF using LaTeX:
pdflatex pymol.tex
Caveats
- Currently you have to compile the u3d converter on Linux. I did that with:
cmake .
make
which created "IDTFConverter" that I used above.
- 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.
Linux install
(This section is not working. How to build this ???)
sudo yum install perl-XML-Parser perl-XML-Simple
unzip U3D_A_061228_5.zip cd ~/Downloads/U3D_A_061228_5/Source setenv U3D_SOURCE $PWD/ #Comment win, uncomment Linus lines nano $U3D_SOURCE/Config/u3d.conf setenv U3D_LIBDIR {$U3D_SOURCE}Build/U3D setenv PATH ${PATH}:{$U3D_LIBDIR} setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:{$U3D_LIBDIR} cd $U3D_SOURCE/Tools/BuildSystem chmod +x build.sh ./build.sh release
alias IDTFConverter $PWD/??