projects
/
ctsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
r277: *** empty log message ***
[ctsim.git]
/
libctsim
/
reconstruct.cpp
diff --git
a/libctsim/reconstruct.cpp
b/libctsim/reconstruct.cpp
index 58f17bc9ac7e7bfc530f446246cc5cf3d388a134..ded9420ca6c6ef30477ff73c2e708ff2f6866410 100644
(file)
--- a/
libctsim/reconstruct.cpp
+++ b/
libctsim/reconstruct.cpp
@@
-8,7
+8,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: reconstruct.cpp,v 1.
2 2000/12/06 01:46:43
kevin Exp $
+** $Id: reconstruct.cpp,v 1.
5 2000/12/17 22:30:34
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
@@
-108,7
+108,7
@@
Reconstructor::plotFilter (SGP* pSGP)
{
#if HAVE_SGP
int nVecFilter = m_pProcessSignal->getNFilterPoints();
{
#if HAVE_SGP
int nVecFilter = m_pProcessSignal->getNFilterPoints();
- double
adPlotXAxis
[nVecFilter];
+ double
* adPlotXAxis = new double
[nVecFilter];
if (nVecFilter > 0 && pSGP) {
double f = m_pProcessSignal->getFilterMin();
if (nVecFilter > 0 && pSGP) {
double f = m_pProcessSignal->getFilterMin();
@@
-123,7
+123,8
@@
Reconstructor::plotFilter (SGP* pSGP)
ezplot.addCurve (adPlotXAxis, m_pProcessSignal->getFilter(), nVecFilter);
ezplot.plot();
}
ezplot.addCurve (adPlotXAxis, m_pProcessSignal->getFilter(), nVecFilter);
ezplot.plot();
}
- }
+ }
\r
+ delete adPlotXAxis;
#endif
}
#endif
}
@@
-137,7
+138,7
@@
Reconstructor::reconstructAllViews ()
void
void
-Reconstructor::reconstructView (int iStartView, int iViewCount, SGP* pSGP)
+Reconstructor::reconstructView (int iStartView, int iViewCount, SGP* pSGP
, bool bBackprojectView
)
{
double* adFilteredProj = new double [m_nFilteredProjections]; // filtered projections
{
double* adFilteredProj = new double [m_nFilteredProjections]; // filtered projections
@@
-146,7
+147,7
@@
Reconstructor::reconstructView (int iStartView, int iViewCount, SGP* pSGP)
for (int iView = iStartView; iView < (iStartView + iViewCount); iView++) {
if (m_iTrace == Trace::TRACE_CONSOLE)
for (int iView = iStartView; iView < (iStartView + iViewCount); iView++) {
if (m_iTrace == Trace::TRACE_CONSOLE)
- cout <<"Reconstructing view " << iView << " (last = " << m_rProj.nView() - 1 << ")\n";
+
std::
cout <<"Reconstructing view " << iView << " (last = " << m_rProj.nView() - 1 << ")\n";
const DetectorArray& rDetArray = m_rProj.getDetectorArray (iView);
const DetectorValue* detval = rDetArray.detValues();
const DetectorArray& rDetArray = m_rProj.getDetectorArray (iView);
const DetectorValue* detval = rDetArray.detValues();
@@
-164,8
+165,9
@@
Reconstructor::reconstructView (int iStartView, int iViewCount, SGP* pSGP)
}
#endif
#endif
}
#endif
#endif
-
- m_pBackprojector->BackprojectView (adFilteredProj, rDetArray.viewAngle());
+
\r
+ if (bBackprojectView)
+ m_pBackprojector->BackprojectView (adFilteredProj, rDetArray.viewAngle());
#ifdef HAVE_SGP
if (m_iTrace >= Trace::TRACE_PLOT && pSGP) {
#ifdef HAVE_SGP
if (m_iTrace >= Trace::TRACE_PLOT && pSGP) {