X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=libctsim%2Fscanner.cpp;h=c593b0937ca9caa9f80f58e9456c7440d9b3cf42;hb=fd1d136a94a6d20013f38d6a997bdfefad0f5e98;hp=7d95afd642506bb5eac5f031c69a56fabc6c1b36;hpb=bfcc769cf8019eabc8c65c07257c8dbee4b4c977;p=ctsim.git diff --git a/libctsim/scanner.cpp b/libctsim/scanner.cpp index 7d95afd..c593b09 100644 --- a/libctsim/scanner.cpp +++ b/libctsim/scanner.cpp @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: scanner.cpp,v 1.14 2000/09/02 05:10:39 kevin Exp $ +** $Id: scanner.cpp,v 1.22 2000/12/18 06:32:13 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 @@ -302,8 +302,7 @@ Scanner::collectProjections (Projections& proj, const Phantom& phm, const int iS #ifdef HAVE_SGP if (pSGP && m_trace >= Trace::TRACE_PHANTOM) { m_pSGP = pSGP; - m_pSGP->eraseWindow(); - double dWindowSize = max(m_detLen, m_dFocalLength * 2) * SQRT2; + double dWindowSize = dmax (m_detLen, m_dFocalLength * 2) * SQRT2; double dHalfWindowSize = dWindowSize / 2; m_dXMinWin = m_dXCenter - dHalfWindowSize; m_dXMaxWin = m_dXCenter + dHalfWindowSize; @@ -311,7 +310,6 @@ Scanner::collectProjections (Projections& proj, const Phantom& phm, const int iS m_dYMaxWin = m_dYCenter + dHalfWindowSize; double dHalfPhmLen = m_phmLen / 2; - m_pSGP->eraseWindow (); m_pSGP->setWindow (m_dXMinWin, m_dYMinWin, m_dXMaxWin, m_dYMaxWin); m_pSGP->setRasterOp (RO_COPY); m_pSGP->setColor (C_RED); @@ -361,10 +359,12 @@ Scanner::collectProjections (Projections& proj, const Phantom& phm, const int iS } m_pSGP->setPenWidth (1); } - if (m_trace >= Trace::TRACE_CONSOLE) + if (m_trace > Trace::TRACE_CONSOLE) traceShowParam ("Current View:", "%d (%.0f%%)", PROJECTION_TRACE_ROW_CURR_VIEW, C_RED, iView + iStartView, (iView + iStartView) / static_cast(m_nView) * 100.); #endif - + if (m_trace == Trace::TRACE_CONSOLE) + std::cout << "Current View: " << iView+iStartView << std::endl; + projectSingleView (phm, detArray, xd1, yd1, xd2, yd2, xs1, ys1, xs2, ys2, viewAngle + 3 * HALFPI); detArray.setViewAngle (viewAngle); @@ -504,7 +504,11 @@ Scanner::traceShowParam (const char *szLabel, const char *fmt, int row, int colo { va_list arg; va_start(arg, color); +#ifdef HAVE_SGP traceShowParamRasterOp (RO_COPY, szLabel, fmt, row, color, arg); +#else + traceShowParamRasterOp (0, szLabel, fmt, row, color, arg); +#endif va_end(arg); } @@ -513,7 +517,11 @@ Scanner::traceShowParamXOR (const char *szLabel, const char *fmt, int row, int c { va_list arg; va_start(arg, color); +#ifdef HAVE_SGP traceShowParamRasterOp (RO_XOR, szLabel, fmt, row, color, arg); +#else + traceShowParamRasterOp (0, szLabel, fmt, row, color, arg); +#endif va_end(arg); } @@ -524,10 +532,7 @@ Scanner::traceShowParamRasterOp (int iRasterOp, const char *szLabel, const char vsnprintf (szValue, sizeof(szValue), fmt, args); - // cio_set_cpos (raysum_trace_menu_column, row); - // cio_set_text_clr (color - 8, 0); - // cio_set_text_clr (color, 0); - +#ifdef HAVE_SGP if (m_pSGP) { m_pSGP->setRasterOp (iRasterOp); double dYPos = m_dYMaxWin - (row * m_dTextHeight); @@ -537,11 +542,13 @@ Scanner::traceShowParamRasterOp (int iRasterOp, const char *szLabel, const char double dValueOffset = (m_dXMaxWin - m_dXMinWin) / 4; m_pSGP->moveAbs (m_dXMinWin + dValueOffset, dYPos); m_pSGP->drawText (szValue); - } else { - cio_put_str (szLabel); - cio_put_str (szValue); - cio_put_str ("\n"); - } + } else +#endif + { + cio_put_str (szLabel); + cio_put_str (szValue); + cio_put_str ("\n"); + } }