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{\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}}%
 
 \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}%
 \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}%
 }%
 \makeindex%
 \begin{document}%
@@ -27,6 +28,7 @@
 \pagestyle{fancyplain}%
 \bibliographystyle{plain}%
 \pagenumbering{roman}%
 \pagestyle{fancyplain}%
 \bibliographystyle{plain}%
 \pagenumbering{roman}%
+
 \setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}}%
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 \tableofcontents%
 \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.
 
 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}%
 
 \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.
 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.
 
 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}%
 
 \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:
 
 
 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{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.
 
 
 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.
   \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 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
 
   \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
   \par Used for platform-independent graphical interface. The graphical-shell
   program \ctsim requires this library.  
   \par www.wxwindows.org
-
 \end{itemize}
 
 \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}%
 
 \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.
 
 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.
 
 \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}%
 
 \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 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.
 
 Perfoms math functions on a single image.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
   \item --invert
   \item --log
 \begin{itemize}\itemsep=0pt
   \item --invert
   \item --log
@@ -155,10 +161,10 @@ Perfoms math functions on a single image.
   \item --sqrt
 \end{itemize}
 
   \item --sqrt
 \end{itemize}
 
-\subsection{if2}\index{Programs,ctsimtext,if2}%
+\section{if2}\label{if2}\index{ctsimtext,if2}%
 Perfoms math functions on a two images.
 
 Perfoms math functions on a two images.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
   \item --add
   \item --sub
 \begin{itemize}\itemsep=0pt
   \item --add
   \item --sub
@@ -168,22 +174,10 @@ Perfoms math functions on a two images.
   \item --row-plot
 \end{itemize}
 
   \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.
 
 Export an imagefile to a standard graphics file.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
   \item --format
   \begin{itemize}\itemsep=0pt
 \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}
 
   \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.
 
 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
 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}.
 
 
 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.
 
 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}
 
 \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.
 
 Convert a projection file into an imagefile.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
 \end{itemize}
 
 \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.
 
 Displays information about a projection file.
 
-\subsubsection{Usage}%
+\usage
 \begin{itemize}\itemsep=0pt
   \item --binaryheader
   \item --binaryview
 \begin{itemize}\itemsep=0pt
   \item --binaryheader
   \item --binaryview
@@ -282,64 +289,57 @@ Displays information about a projection file.
   \item --dump
 \end{itemize}
 
   \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.
 
 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
   \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
       \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}
 \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}%
 
 \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}%
 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
    \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
   \end{itemize}
 
 \newpage
@@ -377,4 +373,5 @@ statistics as described by Herman\cite{HERMAN80}.
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 \printindex%
 
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 \printindex%
 
-\end{document} 
+\end{document}%