From 2efdad35a3d335dfa84a8576f41588dbd7dd8958 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Fri, 9 Feb 2001 14:34:16 +0000 Subject: [PATCH] r510: no message --- doc/ctsim-textui.tex | 3 +- include/phantom.h | 6 +- libctsim/phantom.cpp | 32 +----- libctsupport/cubicinterp.cpp | 7 +- msvc/ctsim/ctsim.plg | 185 +++++++++++++++++++++++------------ msvc/ctsimtext/ctsimtext.dsp | 4 + msvc/libctsim/libctsim.dsp | 8 ++ src/views.cpp | 4 +- tools/pjrec.cpp | 31 +++--- 9 files changed, 167 insertions(+), 113 deletions(-) diff --git a/doc/ctsim-textui.tex b/doc/ctsim-textui.tex index 6f7a5de..85174f2 100644 --- a/doc/ctsim-textui.tex +++ b/doc/ctsim-textui.tex @@ -93,9 +93,8 @@ phm2pj projection-file-name number-of-detectors number-of-views [options...] Select a standard phantom \begin{itemize}\itemsep=0pt \item herman - \item herman-b \item shepp-logan - \item shepp-logan-b + \item unit-pulse \end{itemize} \item --phmfile diff --git a/include/phantom.h b/include/phantom.h index 5769b25..5aa840e 100644 --- a/include/phantom.h +++ b/include/phantom.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: phantom.h,v 1.22 2001/02/08 06:25:07 kevin Exp $ +** $Id: phantom.h,v 1.23 2001/02/09 14:34:16 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -136,9 +136,7 @@ class Phantom public: static const int PHM_INVALID; static const int PHM_HERMAN; - static const int PHM_B_HERMAN; static const int PHM_SHEPP_LOGAN; - static const int PHM_B_SHEPP_LOGAN; static const int PHM_UNITPULSE; Phantom (); @@ -183,9 +181,7 @@ class Phantom #endif void addStdHerman (); - void addStdHermanBordered (); void addStdSheppLogan (); - void addStdSheppLoganBordered (); void print (std::ostream& os) const; void print (std::ostringstream& os) const; diff --git a/libctsim/phantom.cpp b/libctsim/phantom.cpp index fea8e6e..a0ddc40 100644 --- a/libctsim/phantom.cpp +++ b/libctsim/phantom.cpp @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: phantom.cpp,v 1.28 2001/02/08 06:25:07 kevin Exp $ +** $Id: phantom.cpp,v 1.29 2001/02/09 14:34:16 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -32,26 +32,20 @@ const double PhantomElement::SCALE_PELEM_EXTENT=0.005; // increase pelem limits const int Phantom::PHM_INVALID = -1; const int Phantom::PHM_HERMAN = 0; -const int Phantom::PHM_B_HERMAN = 1; -const int Phantom::PHM_SHEPP_LOGAN = 2; -const int Phantom::PHM_B_SHEPP_LOGAN = 3; -const int Phantom::PHM_UNITPULSE = 4; +const int Phantom::PHM_SHEPP_LOGAN = 1; +const int Phantom::PHM_UNITPULSE = 2; const char* Phantom::s_aszPhantomName[] = { {"herman"}, - {"herman-b"}, {"shepp-logan"}, - {"shepp-logan-b"}, - {"unitpulse"}, + {"unit-pulse"}, }; const char* Phantom::s_aszPhantomTitle[] = { {"Herman Head"}, - {"Herman Head (Bordered)"}, {"Shepp-Logan"}, - {"Shepp-Logan (Bordered)"}, {"Unit Pulse"}, }; @@ -156,15 +150,9 @@ Phantom::createFromPhantom (const int phmid) case PHM_HERMAN: addStdHerman(); break; - case PHM_B_HERMAN: - addStdHermanBordered(); - break; case PHM_SHEPP_LOGAN: addStdSheppLogan(); break; - case PHM_B_SHEPP_LOGAN: - addStdSheppLoganBordered(); - break; case PHM_UNITPULSE: m_composition = P_UNIT_PULSE; addPElem ("rectangle", 0., 0., 100., 100., 0., 0.); // outline @@ -411,12 +399,6 @@ Phantom::addStdSheppLogan () addPElem ("ellipse", 0.5538, -0.3858, 0.0330, 0.2060, -18.0, 0.03); } -void -Phantom::addStdSheppLoganBordered () -{ - addStdSheppLogan (); - addPElem ("rectangle", 0.000, 0.0000, 0.8600, 1.150, 0.0, 0.00); -} /* NAME * addStdHerman Standard head phantom of G. T. Herman @@ -446,12 +428,6 @@ Phantom::addStdHerman () addPElem ("ellipse", 0.000, 0.00, 7.875, 5.7187, 90.00, -0.206); } -void -Phantom::addStdHermanBordered () -{ - addStdHerman(); - addPElem ("rectangle", 0.000, 0.00, 10.780, 8.110, 90.00, 0.000); -} /* NAME diff --git a/libctsupport/cubicinterp.cpp b/libctsupport/cubicinterp.cpp index d95f905..fa51f7b 100644 --- a/libctsupport/cubicinterp.cpp +++ b/libctsupport/cubicinterp.cpp @@ -2,7 +2,7 @@ ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: cubicinterp.cpp,v 1.2 2001/02/09 01:55:24 kevin Exp $ +** $Id: cubicinterp.cpp,v 1.3 2001/02/09 14:34:16 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -26,6 +26,11 @@ CubicInterpolator::CubicInterpolator (const double* const y, const int n) : m_pdY(y), m_n(n) { + // Precalculate 2nd derivative of y and put in m_pdY2 + // Calculated by solving set of simultaneous cubic spline equations + // Only n-2 cubic spline equations, but able to make two more + // equations by setting second derivative to 0 at ends + m_pdY2 = new double [n]; m_pdY2[0] = 0; // second deriviative = 0 at beginning and end m_pdY2[n-1] = 0; diff --git a/msvc/ctsim/ctsim.plg b/msvc/ctsim/ctsim.plg index 72e9dd7..2b6578f 100644 --- a/msvc/ctsim/ctsim.plg +++ b/msvc/ctsim/ctsim.plg @@ -3,88 +3,153 @@
 

Build Log

---------------------Configuration: libctsim - Win32 Debug-------------------- +--------------------Configuration: libctsim - Win32 Release--------------------

Command Lines

-Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP108.tmp" with contents +Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16A.tmp" with contents [ -/nologo /G6 /MTd /W3 /Gm /Gi /GR /GX /Zi /Od /Gy /I "..\..\..\wx2.2.5\src\png" /I "..\..\..\wx2.2.5\src\zlib" /I "..\..\INCLUDE" /I "..\..\getopt" /I "..\..\..\fftw-2.1.3\fftw" /I "..\..\..\fftw-2.1.3\rfftw" /I "..\..\..\wx2.2.5\include" /D "_DEBUG" /D "HAVE_WXWIN" /D "HAVE_STRING_H" /D "HAVE_GETOPT_H" /D "WIN32" /D "_MBCS" /D "_LIB" /D "MSVC" /D "HAVE_FFTW" /D "HAVE_PNG" /D "HAVE_SGP" /D "HAVE_WXWINDOWS" /D "__WXMSW__" /D "__WIN95__" /D "__WIN32__" /D WINVER=0x0400 /FR"Debug/" /Fp"Debug/libctsim.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c +/nologo /G6 /MT /W3 /GR- /GX /O2 /I "\wx2.2.5\src\png" /I "\wx2.2.5\src\zlib" /I "..\..\INCLUDE" /I "..\..\getopt" /I "..\..\..\fftw-2.1.3\fftw" /I "..\..\..\fftw-2.1.3\rfftw" /I "..\..\..\wx2.2.5\include" /D "NDEBUG" /D "HAVE_STRING_H" /D "HAVE_GETOPT_H" /D "WIN32" /D "_MBCS" /D "_LIB" /D "MSVC" /D "HAVE_FFTW" /D "HAVE_PNG" /D "HAVE_SGP" /D "HAVE_WXWINDOWS" /D "__WXMSW__" /D "__WIN95__" /D "__WIN32__" /D WINVER=0x0400 /Fp"Release/libctsim.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c "C:\ctsim\libctsim\backprojectors.cpp" ] -Creating command line "cl.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP108.tmp" -Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP109.tmp" with contents +Creating command line "cl.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16A.tmp" +Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16B.tmp" with contents [ -/nologo /out:"Debug\libctsim.lib" -.\Debug\array2dfile.obj -.\Debug\backprojectors.obj -.\Debug\clip.obj -.\Debug\consoleio.obj -.\Debug\dlgezplot.obj -.\Debug\ezplot.obj -.\Debug\ezset.obj -.\Debug\ezsupport.obj -.\Debug\filter.obj -.\Debug\fnetorderstream.obj -.\Debug\fourier.obj -.\Debug\getopt.obj -.\Debug\getopt1.obj -.\Debug\globalvars.obj -.\Debug\hashtable.obj -.\Debug\imagefile.obj -.\Debug\mathfuncs.obj -.\Debug\phantom.obj -.\Debug\plotfile.obj -.\Debug\pol.obj -.\Debug\procsignal.obj -.\Debug\projections.obj -.\Debug\reconstruct.obj -.\Debug\scanner.obj -.\Debug\sgp.obj -.\Debug\strfuncs.obj -.\Debug\syserror.obj -.\Debug\trace.obj -.\Debug\transformmatrix.obj -.\Debug\xform.obj -.\Debug\cubicinterp.obj +/nologo /G6 /MT /W3 /GR /GX /O2 /I "\wx2.2.5\src\png" /I "\wx2.2.5\src\zlib" /I "..\..\INCLUDE" /I "..\..\getopt" /I "..\..\..\fftw-2.1.3\fftw" /I "..\..\..\fftw-2.1.3\rfftw" /I "..\..\..\wx2.2.5\include" /D "NDEBUG" /D "HAVE_STRING_H" /D "HAVE_GETOPT_H" /D "WIN32" /D "_MBCS" /D "_LIB" /D "MSVC" /D "HAVE_FFTW" /D "HAVE_PNG" /D "HAVE_SGP" /D "HAVE_WXWINDOWS" /D "__WXMSW__" /D "__WIN95__" /D "__WIN32__" /D WINVER=0x0400 /Fp"Release/libctsim.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c +"C:\ctsim\libctgraphics\dlgezplot.cpp" +"C:\ctsim\libctsim\filter.cpp" +"C:\ctsim\libctsim\fourier.cpp" +"C:\ctsim\libctsim\globalvars.cpp" +"C:\ctsim\libctsupport\hashtable.cpp" +"C:\ctsim\libctsim\imagefile.cpp" +"C:\ctsim\libctsim\phantom.cpp" +"C:\ctsim\libctsupport\plotfile.cpp" +"C:\ctsim\libctgraphics\pol.cpp" +"C:\ctsim\libctsim\procsignal.cpp" +"C:\ctsim\libctsim\projections.cpp" +"C:\ctsim\libctsim\reconstruct.cpp" +"C:\ctsim\libctsim\scanner.cpp" +"C:\ctsim\libctsupport\syserror.cpp" +"C:\ctsim\libctsim\trace.cpp" +"C:\ctsim\libctsupport\cubicinterp.cpp" ] -Creating command line "link.exe -lib @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP109.tmp" +Creating command line "cl.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16B.tmp" +Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16C.tmp" with contents +[ +/nologo /out:"Release\libctsim.lib" +.\Release\array2dfile.obj +.\Release\backprojectors.obj +.\Release\clip.obj +.\Release\consoleio.obj +.\Release\dlgezplot.obj +.\Release\ezplot.obj +.\Release\ezset.obj +.\Release\ezsupport.obj +.\Release\filter.obj +.\Release\fnetorderstream.obj +.\Release\fourier.obj +.\Release\getopt.obj +.\Release\getopt1.obj +.\Release\globalvars.obj +.\Release\hashtable.obj +.\Release\imagefile.obj +.\Release\mathfuncs.obj +.\Release\phantom.obj +.\Release\plotfile.obj +.\Release\pol.obj +.\Release\procsignal.obj +.\Release\projections.obj +.\Release\reconstruct.obj +.\Release\scanner.obj +.\Release\sgp.obj +.\Release\strfuncs.obj +.\Release\syserror.obj +.\Release\trace.obj +.\Release\transformmatrix.obj +.\Release\xform.obj +.\Release\cubicinterp.obj +] +Creating command line "link.exe -lib @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16C.tmp"

Output Window

Compiling... backprojectors.cpp +Compiling... +dlgezplot.cpp +filter.cpp +fourier.cpp +globalvars.cpp +hashtable.cpp +imagefile.cpp +phantom.cpp +plotfile.cpp +pol.cpp +procsignal.cpp +projections.cpp +reconstruct.cpp +scanner.cpp +syserror.cpp +trace.cpp +cubicinterp.cpp Creating library...

---------------------Configuration: ctsim - Win32 Debug-------------------- +--------------------Configuration: ctsim - Win32 Release--------------------

Command Lines

-Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP10A.tmp" with contents +Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16D.tmp" with contents +[ +/nologo /G6 /MT /W3 /GR /GX /O2 /I "..\..\..\fftw-2.1.3\fftw" /I "\wx2.2.5\include" /I "\wx2.2.5\src\png" /I "\wx2.2.5\src\zlib" /I "..\..\include" /I "..\..\getopt" /I "..\..\..\fftw-2.1.3\rfftw" /D "NDEBUG" /D "__WXWIN__" /D "__WXMSW__" /D "HAVE_SGP" /D "HAVE_PNG" /D "HAVE_WXWINDOWS" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "HAVE_STRING_H" /D "HAVE_FFTW" /D "HAVE_RFFTW" /D "HAVE_GETOPT_H" /D "MSVC" /D "__WIN95__" /D "__WIN32__" /D WINVER=0x0400 /D "STRICT" /D CTSIMVERSION=\"3.0.0alpha5\" /FR"Release/" /Fp"Release/ctsim.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c +"C:\ctsim\src\ctsim.cpp" +"C:\ctsim\src\dialogs.cpp" +"C:\ctsim\src\dlgprojections.cpp" +"C:\ctsim\src\dlgreconstruct.cpp" +"C:\ctsim\src\docs.cpp" +"C:\ctsim\src\views.cpp" +] +Creating command line "cl.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16D.tmp" +Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16E.tmp" with contents [ -comctl32.lib winmm.lib rpcrt4.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ../libctsim/Debug/libctsim.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib libcmtd.lib ..\..\..\fftw-2.1.3\Win32\FFTW2st\Debug\FFTW2st.lib ..\..\..\fftw-2.1.3\Win32\RFFTW2st\Debug\RFFTW2st.lib wxd.lib xpmd.lib tiffd.lib zlibd.lib pngd.lib opengl32.lib glu32.lib /nologo /subsystem:windows /incremental:yes /pdb:"Debug/ctsim.pdb" /debug /machine:I386 /out:"Debug/ctsim.exe" /pdbtype:sept /libpath:"\wx2.2.5\lib" -.\Debug\ctsim.obj -.\Debug\dialogs.obj -.\Debug\dlgprojections.obj -.\Debug\dlgreconstruct.obj -.\Debug\docs.obj -.\Debug\graph3dview.obj -.\Debug\views.obj -.\Debug\ctsim.res -\ctsim\msvc\libctsim\Debug\libctsim.lib -"\fftw-2.1.3\Win32\FFTW2st\Debug\FFTW2st.lib" -"\fftw-2.1.3\Win32\RFFTW2st\Debug\RFFTW2st.lib" -\wx2.2.5\lib\jpegd.lib -\wx2.2.5\lib\pngd.lib -\wx2.2.5\lib\wxd.lib -\wx2.2.5\lib\xpmd.lib -\wx2.2.5\lib\zlibd.lib -\wx2.2.5\lib\tiffd.lib +/nologo /G6 /MT /W3 /GR /GX /O2 /I "..\..\..\fftw-2.1.3\fftw" /I "\wx2.2.5\include" /I "\wx2.2.5\src\png" /I "\wx2.2.5\src\zlib" /I "..\..\include" /I "..\..\getopt" /I "..\..\..\fftw-2.1.3\rfftw" /D "NDEBUG" /D "__WXWIN__" /D "__WXMSW__" /D "HAVE_SGP" /D "HAVE_PNG" /D "HAVE_WXWINDOWS" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "HAVE_STRING_H" /D "HAVE_FFTW" /D "HAVE_RFFTW" /D "HAVE_GETOPT_H" /D "MSVC" /D "__WIN95__" /D "__WIN32__" /D WINVER=0x0400 /D "STRICT" /D CTSIMVERSION=\"3.0.0beta1\" /FR"Release/" /Fp"Release/ctsim.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c +"C:\ctsim\src\graph3dview.cpp" ] -Creating command line "link.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP10A.tmp" +Creating command line "cl.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16E.tmp" +Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16F.tmp" with contents +[ +kernel32.lib user32.lib wsock32.lib comctl32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib tiff.lib jpeg.lib png.lib zlib.lib xpm.lib opengl32.lib glu32.lib /nologo /subsystem:windows /incremental:no /pdb:"Release/ctsim.pdb" /machine:I386 /out:"Release/ctsim.exe" /libpath:"\wx2.2.5\lib" +.\Release\ctsim.obj +.\Release\dialogs.obj +.\Release\dlgprojections.obj +.\Release\dlgreconstruct.obj +.\Release\docs.obj +.\Release\graph3dview.obj +.\Release\views.obj +.\Release\ctsim.res +\ctsim\msvc\libctsim\Release\libctsim.lib +"\fftw-2.1.3\Win32\FFTW2st\Release\FFTW2st.lib" +"\fftw-2.1.3\Win32\RFFTW2st\Release\RFFTW2st.lib" +\wx2.2.5\lib\jpeg.lib +\wx2.2.5\lib\png.lib +\wx2.2.5\lib\wx.lib +\wx2.2.5\lib\xpm.lib +\wx2.2.5\lib\zlib.lib +\wx2.2.5\lib\tiff.lib +] +Creating command line "link.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP16F.tmp"

Output Window

+Compiling... +ctsim.cpp +dialogs.cpp +dlgprojections.cpp +dlgreconstruct.cpp +docs.cpp +views.cpp +Compiling... +graph3dview.cpp Linking... +LINK : warning LNK4089: all references to "WSOCK32.dll" discarded by /OPT:REF

Results

-ctsim.exe - 0 error(s), 0 warning(s) +ctsim.exe - 0 error(s), 1 warning(s)
diff --git a/msvc/ctsimtext/ctsimtext.dsp b/msvc/ctsimtext/ctsimtext.dsp index 3b6c324..3886091 100644 --- a/msvc/ctsimtext/ctsimtext.dsp +++ b/msvc/ctsimtext/ctsimtext.dsp @@ -92,6 +92,10 @@ SOURCE=..\..\tools\ctsimtext.cpp # End Source File # Begin Source File +SOURCE=..\..\libctsupport\cubicinterp.cpp +# End Source File +# Begin Source File + SOURCE=..\..\tools\if1.cpp # End Source File # Begin Source File diff --git a/msvc/libctsim/libctsim.dsp b/msvc/libctsim/libctsim.dsp index b2d359e..c44e324 100644 --- a/msvc/libctsim/libctsim.dsp +++ b/msvc/libctsim/libctsim.dsp @@ -118,6 +118,10 @@ SOURCE=..\..\libctsupport\consoleio.cpp # End Source File # Begin Source File +SOURCE=..\..\libctsupport\cubicinterp.cpp +# End Source File +# Begin Source File + SOURCE=..\..\libctgraphics\dlgezplot.cpp # End Source File # Begin Source File @@ -250,6 +254,10 @@ SOURCE=..\..\include\ctsupport.h # End Source File # Begin Source File +SOURCE=..\..\include\cubicinterp.h +# End Source File +# Begin Source File + SOURCE=..\..\include\dlgezplot.h # End Source File # Begin Source File diff --git a/src/views.cpp b/src/views.cpp index 2f4d443..6a77ba3 100644 --- a/src/views.cpp +++ b/src/views.cpp @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: views.cpp,v 1.100 2001/02/09 01:54:21 kevin Exp $ +** $Id: views.cpp,v 1.101 2001/02/09 14:34:16 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -1802,7 +1802,7 @@ PhantomFileView::PhantomFileView() m_iDefaultNView = 320; #endif m_iDefaultNSample = 1; - m_dDefaultRotation = 1; + m_dDefaultRotation = 2; m_dDefaultFocalLength = 2; m_dDefaultViewRatio = 1; m_dDefaultScanRatio = 1; diff --git a/tools/pjrec.cpp b/tools/pjrec.cpp index bee46c3..24ee087 100644 --- a/tools/pjrec.cpp +++ b/tools/pjrec.cpp @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: pjrec.cpp,v 1.21 2001/01/07 22:19:44 kevin Exp $ +** $Id: pjrec.cpp,v 1.22 2001/02/09 14:34:16 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -48,7 +48,7 @@ static struct option my_options[] = {0, 0, 0, 0} }; -static const char* g_szIdStr = "$Id: pjrec.cpp,v 1.21 2001/01/07 22:19:44 kevin Exp $"; +static const char* g_szIdStr = "$Id: pjrec.cpp,v 1.22 2001/02/09 14:34:16 kevin Exp $"; void pjrec_usage (const char *program) @@ -61,24 +61,25 @@ pjrec_usage (const char *program) std::cout << " nx-image Number of columns in output image" << std::endl; std::cout << " ny-image Number of rows in output image" << std::endl; std::cout << " --interp Interpolation method during backprojection" << std::endl; - std::cout << " nearest Nearest neighbor interpolation" << std::endl; - std::cout << " linear Linear interpolation" << std::endl; + std::cout << " nearest Nearest neighbor interpolation" << std::endl; + std::cout << " linear Linear interpolation (default)" << std::endl; + std::cout << " cubic Cubic interpolation\n"; #if HAVE_BSPLINE_INTERP - std::cout << " bspline B-spline interpolation" << std::endl; + std::cout << " bspline B-spline interpolation" << std::endl; #endif std::cout << " --preinterpolate Preinterpolation factor (default = 1)\n"; std::cout << " Used only with frequency-based filtering\n"; std::cout << " --filter Filter name" << std::endl; - std::cout << " abs_bandlimit Abs * Bandlimiting (default)" << std::endl; - std::cout << " abs_sinc Abs * Sinc" << std::endl; - std::cout << " abs_cosine Abs * Cosine" << std::endl; - std::cout << " abs_hamming Abs * Hamming" << std::endl; - std::cout << " shepp Shepp-Logan" << std::endl; - std::cout << " bandlimit Bandlimiting" << std::endl; - std::cout << " sinc Sinc" << std::endl; - std::cout << " cosine Cosine" << std::endl; - std::cout << " triangle Triangle" << std::endl; - std::cout << " hamming Hamming" << std::endl; + std::cout << " abs_bandlimit Abs * Bandlimiting (default)" << std::endl; + std::cout << " abs_sinc Abs * Sinc" << std::endl; + std::cout << " abs_cosine Abs * Cosine" << std::endl; + std::cout << " abs_hamming Abs * Hamming" << std::endl; + std::cout << " shepp Shepp-Logan" << std::endl; + std::cout << " bandlimit Bandlimiting" << std::endl; + std::cout << " sinc Sinc" << std::endl; + std::cout << " cosine Cosine" << std::endl; + std::cout << " triangle Triangle" << std::endl; + std::cout << " hamming Hamming" << std::endl; std::cout << " --filter-method Filter method before backprojections\n";; std::cout << " convolution Spatial filtering (default)\n"; std::cout << " fourier Frequency filtering with discete fourier\n"; -- 2.34.1