r426: Updated online help, html help now working
[ctsim.git] / doc / tex2rtf / ctsim.tex
index 1c8e6176fa33e5de504eec6d83c7d6c3b7ddefd8..5a3254816a4235250ce5903f8958d0d16322ca69 100644 (file)
@@ -5,6 +5,7 @@
 
 \newcommand{\ctsim}{{\tt CTSim}}
 \newcommand{\ctsimtext}{{\tt CTSimText}}
+\newcommand{\usage}{{\bf Usage}{\par}}
 
 \newcommand{\commandref}[2]{\helpref{{\tt $\backslash$#1}}{#2}}%
 \newcommand{\commandrefn}[2]{\helprefn{{\tt $\backslash$#1}}{#2}\index{#1}}%
@@ -19,7 +20,7 @@
 \date{January 2001}%
 }%
 \winhelponly{\title{Manual for CTSim 3.0}%
-\author{by Kevin Rosenberg, M.D.\\$$\image{1cm;0cm}{logo-huge.bmp}$$}%
+\author{by Kevin Rosenberg, M.D.\\$$\image{3cm;3cm}{logo-huge.bmp}$$}%
 }%
 \makeindex%
 \begin{document}%
@@ -27,6 +28,7 @@
 \pagestyle{fancyplain}%
 \bibliographystyle{plain}%
 \pagenumbering{roman}%
+
 \setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}}%
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 \tableofcontents%
@@ -53,23 +55,27 @@ WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY
 OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 PERFORMANCE OF THIS SOFTWARE.
 
-\chapter{Introduction}%
+\chapter{Introduction}\label{introduction}%
 \pagenumbering{arabic}%
 \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 
+\winhelponly{$$\image{3cm;3cm}{logo-huge}$$}%
+\htmlonly{$$\image{3cm;3cm}{logo-huge.gif}$$}%
 Computed Tomography is a technique for estimating the interior of an object 
 from measurement of radiation collected around the object. This radiation 
 can be either projected through or emitted from the object.
-\ctsim simulates the process of projecting X-rays through a phantom object.
-\ctsim can then reconstruct the interior of the object from the projections
+\rtfsp\ctsim simulates the process of projecting X-rays through a phantom object.
+\rtfsp\ctsim can then reconstruct the interior of the object from the projections
 collected around the phantom object.
 
+The \ctsim package has two executable files: the graphical \helprefn{ctsim}{ctsim} and text \helprefn{ctsimtext}{ctsimtext} programs.
+
 \chapter{Installation}\index{Installation}%
 \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 
-\section{Download}%\index{Installation,Download}%
+\section{Download}\label{download}\index{Installation,Download}%
 
 The latest version of CTSim, plus source code, can be accessed from:
 
@@ -84,11 +90,11 @@ It is available in Windows 95/NT/2000 and Linux GUI versions and non-GUI version
 
 \section{Installing Windows Binary}\index{Installation,Windows}%
 
-\section{Build From Sources}%\index{Installation,Build}%
+\section{Build From Sources}\label{build}\index{Installation,Build}%
 
 See the INSTALL file included in the source distribution for instructions.
 
-\section{Requirements}\index{Installation,Build,Requirements}%
+\section{Web Requirements}\label{installreq}\index{Installation,Requirements}%
   \begin{itemize}\itemsep=0pt
   \item zlib Library (optional)
         \par Used for PNG file export.
@@ -102,7 +108,7 @@ See the INSTALL file included in the source distribution for instructions.
        \par www.fftw.org
 
   \item readline library (optional)
-       /par Used for {/ctsimtext} interactive shell.
+       \par Used for \ctsimtext interactive shell.
 
   \item dmalloc library (optional)
        \par Used for debugging memory allocation
@@ -112,41 +118,41 @@ See the INSTALL file included in the source distribution for instructions.
   \par Used for platform-independent graphical interface. The graphical-shell
   program \ctsim requires this library.  
   \par www.wxwindows.org
-
 \end{itemize}
 
-\chapter{ctsim - the Graphical User Interface}%\index{ctsim}% 
+\chapter{ctsim - the Graphical User Interface}\label{ctsim}\index{ctsim}% 
 \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 
-\ctsim\ is the graphical shell for the CTSim project. It is
+\ctsim is the graphical shell for the CTSim project. It is
 written using the wxLibrary for cross-platform compatibility with GTK,
 Motif, and Microsoft Windows. It includes all of the functionality of
 the command-line tool {\tt ctsimtext} as well as image processing and visualization features.
 
-\section{Usage}
-ctsim [OPTIONS] [files to open...]
-
 \ctsim can open projection files, image files, phantom definition files, and plotfiles.
 
-\chapter{ctsimtext - The Command Line Interface}\index{ctsimtext}%
-\ctsimtext is a master shell for all of the command-line utilities. 
+\usage
+ctsim [OPTIONS] [files to open...]
+
+\chapter{ctsimtext}\label{ctsimtext}\index{ctsimtext}%
 \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 
-\section{Usage}%
+\ctsimtext is a master shell for all of the command-line utilities. 
 
+\usage
 \ctsimtext can be executed without any parameters. In that case, \ctsimtext
 offers a command-line to enter the function-names and their parameters. The output of the command is displayed. Further commands may be given to \ctsimtext. The shell is exited by the {\tt quit} command.
 
-\ctsimtext can also be called to execute a single command. This is especially useful for batch files containing multiple \ctsimtext commands. This is invoked by calling {\tt ctsimtext function-name parameters...}.
+\ctsimtext can also be called to execute a single command. This is especially useful for batch files containing multiple \ctsimtext commands. This is invoked by calling \par
+{\tt ctsimtext function-name parameters...}.
 
-The following function names are available:
+The available functions are:
 
-\subsection{if1}\index{Programs,ctsimtext,if1}%
+\section{if1}\label{if1}\index{ctsimtext,if1}%
 Perfoms math functions on a single image.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
   \item --invert
   \item --log
@@ -155,10 +161,10 @@ Perfoms math functions on a single image.
   \item --sqrt
 \end{itemize}
 
-\subsection{if2}\index{Programs,ctsimtext,if2}%
+\section{if2}\label{if2}\index{ctsimtext,if2}%
 Perfoms math functions on a two images.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
   \item --add
   \item --sub
@@ -168,22 +174,10 @@ Perfoms math functions on a two images.
   \item --row-plot
 \end{itemize}
 
-\subsection{ifinfo}\index{Programs,ctsimtext,ifinfo}%
-
-Displays information about an imagefile.
-\subsubsection{Usage}%
-\begin{itemize}\itemsep=0pt
-  \item --labels
-  \item --no-labels
-  \item --stats
-  \item --no-stats
-  \item --help
-\end{itemize}
-
-\subsection{ifexport}\index{Programs,ctsimtext,ifexport}%
+\section{ifexport}\label{ifexport}\index{ctsimtext,ifexport}%
 Export an imagefile to a standard graphics file.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
   \item --format
   \begin{itemize}\itemsep=0pt
@@ -212,10 +206,23 @@ Export an imagefile to a standard graphics file.
   \item --max
 \end{itemize}
 
-\subsection{phm2pj}\index{Programs,ctsimtext,phm2pj}%
+\section{ifinfo}\label{ifinfo}\index{ctsimtext,ifinfo}%
+
+Displays information about an imagefile.
+
+\usage
+\begin{itemize}\itemsep=0pt
+  \item --labels
+  \item --no-labels
+  \item --stats
+  \item --no-stats
+  \item --help
+\end{itemize}
+
+\section{phm2pj}\label{phm2pj}\index{ctsimtext,phm2pj}%
 Simulates collection of X-rays data (projections) around a phantom object.
 
-\subsubsection{Usage}%
+\usage
 phm2pj projection-file-name number-of-detectors number-of-views [options...]
 \begin{itemize}\itemsep=0pt
   \item --phantom
@@ -253,27 +260,27 @@ a rotation angle of 1 and for equilinear and equiangular geometries use a rotati
 
 The Herman phantom is taken with permission from Gabor Hermans 1980 book\cite{HERMAN80}. The Shepp-Logan phantom was published in 1974\cite{SHEPP74}.
 
-\subsection{phm2if}\index{Programs,ctsimtext,phm2if}%
+\section{phm2if}\label{phm2if}\index{ctsimtext,phm2if}%
 Converts a geometric phantom object into an imagefile. The size of the
 imagefile in pixels must be specified as well as the number of samples
 to average per pixel.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
   \item --nsamples
 \end{itemize}
 
-\subsection{pj2if}\index{Programs,ctsimtext,pj2if}%
+\section{pj2if}\label{pj2if}\index{ctsimtext,pj2if}%
 Convert a projection file into an imagefile.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
 \end{itemize}
 
-\subsection{pjinfo}\index{Programs,ctsimtext,pjinfo}%
+\section{pjinfo}\label{pjinfo}\index{ctsimtext,pjinfo}%
 Displays information about a projection file.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
   \item --binaryheader
   \item --binaryview
@@ -282,64 +289,57 @@ Displays information about a projection file.
   \item --dump
 \end{itemize}
 
-\subsection{pjrec}\index{Programs,ctsimtext,pjrec}%
+\section{pjrec}\label{pjrec}\index{ctsimtext,pjrec}%
 Reconstructs the interior of an object from a projection file.
 
-\subsubsection{Usage}%
-
-\subsubsection{Parameters}%
-\begin{itemize}\itemsep=0pt
-  \item Filter 
-  Selects which filter to apply to each projection. To
-  properly reconstruct an image, this filter should be multiplied 
-  by the absolute value of distance from zero frequency.
+\usage
+\begin{twocollist}
+\twocolitemruled{{\bf Parameter}}{{\bf Options}}
+\twocolitem{{\bf --filter}}{Selects which filter to apply to each projection. To properly reconstruct an image, this filter should be multiplied 
+by the absolute value of distance from zero frequency.
   \begin{itemize}\itemsep=0pt
     \item abs_bandlimit
     \item abs_cosine
     \item abs_hamming
-    \item abs_sinc
-  \end{itemize}
-
-  \item Filter Parameter 
-  \par Sets the alpha level for Hamming
-  window. At setting of 0.54, this equals the Hanning window.
-
-  \item Filter Method
-    \begin{itemize}\itemsep=0pt
-      \item convolution
+  \end{itemize}}
+  \twocolitem{{\bf --filter-parameter}}{Sets the alpha level for Hamming
+  window. At setting of 0.54, this equals the Hanning window.}
+  \twocolitem{{\bf --filter-method}}{Selects the filtering method. For large numbers of detectors, {\tt rfftw} is optimal. For smaller numbers of detectors, {\tt convolution} might be a bit faster. 
+\begin{itemize}\itemsep=0pt
+\item convolution
       \item fourier
       \item fourier_table
       \item fftw
       \item rfftw
-    \end{itemize}
-
-  \item Filter Generation
-    \begin{itemize}\itemsep=0pt
-      \item direct
-      \item inverse_fourier
-    \end{itemize}
-
-  \item Interpolation
-    \begin{itemize}\itemsep=0pt
-      \item nearest
-      \item linear
-    \end{itemize}
-     
-  \item Backprojection
-    \begin{itemize}\itemsep=0pt
-      \item trig
-      \item table
-      \item diff
-      \item diff2
-      \item idiff2
-      \item idiff3
-    \end{itemize}
-
-  \item Zeropad
-  \item Preinterpolation Factor
+\end{itemize}}
+  \twocolitem{{\bf --filter-generation}}{Selects the filter generation. With convolution, {\tt direct} is the proper method to select. With any of the frequency methods, {\tt inverse-fourier} is the best method.
+\begin{itemize}\itemsep=0pt
+\item direct
+      \item inverse-fourier
+\end{itemize}
+}
+  \twocolitem{{\bf --interpolation}}{Interpolation technique. {\tt linear} is optimal.
+\begin{itemize}\itemsep=0pt
+\item nearest
+\item linear
 \end{itemize}
+}    
+  \twocolitem{{\bf -backprojection}}{Selects the backprojection technique. A setting of {\tt idiff3} is optimal.
+\begin{itemize}\itemsep=0pt
+\item trig
+\item table
+\item diff
+\item diff2
+\item idiff2
+\item idiff3
+\end{itemize}
+}
+\twocolitem{{\bf --zeropad}}{ Zeropad factor. A setting of {\tt 1} is optimal.}
+
+  \twocolitem{{\bf --preinterpolate}}{Selects preinterpolation interpolation technique and sets the preinterpolation factor. Currently, this is experimental and does not work well.}
+\end{twocollist}
 
-\chapter{The Web Browser CGI Interface}\index{Web Interface}%
+\chapter{The Web Browser CGI Interface}\label{webinterface}\index{Web Interface}%
 \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 
@@ -351,17 +351,13 @@ performed both visually by an image subtraction as well as by standard
 statistics as described by Herman\cite{HERMAN80}.
 
 \section{Requirements}\index{Web Interface,Requirements}%
-\begin{itemize}\itemsep=0pt
-   \item For Web Interface
    \begin{itemize}\itemsep=0pt
       \item Apache or other CGI compatible web server
 
       \item Perl (version 4.0 or higher)
 
       \item A client web browser than can display PNG files. Most
-      current web browswer do support PNG.
-    \end{itemize}
-
+      current web browsers support PNG.
   \end{itemize}
 
 \newpage
@@ -377,4 +373,5 @@ statistics as described by Herman\cite{HERMAN80}.
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 \printindex%
 
-\end{document} 
+\end{document}%