projects
/
ctsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
r261: Use explicit std:: namespace
[ctsim.git]
/
tools
/
phm2pj.cpp
diff --git
a/tools/phm2pj.cpp
b/tools/phm2pj.cpp
index 0459f53f7b10bdfa87c61656a8963bcdb112232d..f42dd1293d475fe9e20a1050235c98c1cd1a76a3 100644
(file)
--- a/
tools/phm2pj.cpp
+++ b/
tools/phm2pj.cpp
@@
-9,7
+9,7
@@
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: phm2pj.cpp,v 1.1
1 2000/08/27 20:32:55
kevin Exp $
+** $Id: phm2pj.cpp,v 1.1
6 2000/11/24 12:08:10
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
**
** 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
@@
-50,7
+50,7
@@
static struct option phm2pj_options[] =
{0, 0, 0, 0}
};
{0, 0, 0, 0}
};
-static const char* g_szIdStr = "$Id: phm2pj.cpp,v 1.1
1 2000/08/27 20:32:55
kevin Exp $";
+static const char* g_szIdStr = "$Id: phm2pj.cpp,v 1.1
6 2000/11/24 12:08:10
kevin Exp $";
void
void
@@
-72,6
+72,10
@@
phm2pj_usage (const char *program)
cout << " --nray Number of rays per detector (default = 1)\n";
cout << " --rotangle Degrees to rotate view through (multiple of PI)\n";
cout << " (default = 1)\n";
cout << " --nray Number of rays per detector (default = 1)\n";
cout << " --rotangle Degrees to rotate view through (multiple of PI)\n";
cout << " (default = 1)\n";
+ cout << " --geometry Geometry of scanning\n";
+ cout << " parallel Parallel scan beams (default)\n";
+ cout << " equilinear Equilinear divergent scan beams\n";
+ cout << " equiangular Equiangular divergent scan beams\n";
cout << " --focal-length Focal length ratio (ratio to radius of phantom)\n";
cout << " (default = 1)\n";
cout << " --field-of-view Field of view (ratio to diameter of phantom square)\n";
cout << " --focal-length Focal length ratio (ratio to radius of phantom)\n";
cout << " (default = 1)\n";
cout << " --field-of-view Field of view (ratio to diameter of phantom square)\n";
@@
-100,6
+104,7
@@
phm2pj_main (int argc, char* argv[])
string optGeometryName = Scanner::convertGeometryIDToName(Scanner::GEOMETRY_PARALLEL);
char *opt_outfile = NULL;
string opt_desc;
string optGeometryName = Scanner::convertGeometryIDToName(Scanner::GEOMETRY_PARALLEL);
char *opt_outfile = NULL;
string opt_desc;
+ string optPhmName;
string optPhmFileName;
int opt_ndet;
int opt_nview;
string optPhmFileName;
int opt_ndet;
int opt_nview;
@@
-107,7
+112,6
@@
phm2pj_main (int argc, char* argv[])
double dOptFocalLength = 1.;
double dOptFieldOfView = 1.;
int opt_trace = Trace::TRACE_NONE;
double dOptFocalLength = 1.;
double dOptFieldOfView = 1.;
int opt_trace = Trace::TRACE_NONE;
- string optPhmName (Phantom::convertPhantomIDToName(Phantom::PHM_HERMAN));
int opt_verbose = 0;
int opt_debug = 0;
double opt_rotangle = 1;
int opt_verbose = 0;
int opt_debug = 0;
double opt_rotangle = 1;
@@
-235,7
+239,7
@@
phm2pj_main (int argc, char* argv[])
}
ostringstream desc;
}
ostringstream desc;
- desc << "phm2pj: NDet=" << opt_ndet << ", Nview=" << opt_nview << ", NRay=" << opt_nray << ", RotAngle=" << opt_rotangle << ", ";
+ desc << "phm2pj: NDet=" << opt_ndet << ", Nview=" << opt_nview << ", NRay=" << opt_nray << ", RotAngle=" << opt_rotangle << ",
Geometry=" << optGeometryName << ",
";
if (optPhmFileName.length()) {
desc << "PhantomFile=" << optPhmFileName;
} else if (optPhmName != "") {
if (optPhmFileName.length()) {
desc << "PhantomFile=" << optPhmFileName;
} else if (optPhmName != "") {
@@
-296,8
+300,11
@@
phm2pj_main (int argc, char* argv[])
if (mpiWorld.getRank() == 0)
pjGlobal.initFromScanner (scanner);
if (mpiWorld.getRank() == 0)
pjGlobal.initFromScanner (scanner);
- if (opt_verbose)
- pjGlobal.printScanInfo();
+ if (opt_verbose) {
+ ostringstream os;
+ pjGlobal.printScanInfo(os);
+ cout << os.str();
+ }
Projections pjLocal (scanner);
pjLocal.setNView (mpiWorld.getMyLocalWorkUnits());
Projections pjLocal (scanner);
pjLocal.setNView (mpiWorld.getMyLocalWorkUnits());
@@
-348,8
+355,9
@@
phm2pj_main (int argc, char* argv[])
if (opt_verbose) {
phm.print();
cout << endl;
if (opt_verbose) {
phm.print();
cout << endl;
- pjGlobal.printScanInfo();
- cout << endl;
+ ostringstream os;
+ pjGlobal.printScanInfo (os);
+ cout << os.str() << endl;
cout << " Remark: " << pjGlobal.remark() << endl;
cout << "Run time: " << pjGlobal.calcTime() << " seconds\n";
}
cout << " Remark: " << pjGlobal.remark() << endl;
cout << "Run time: " << pjGlobal.calcTime() << " seconds\n";
}