X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=include%2Fscanner.h;h=09ab796ce48ed25354a88a678ffdee73db2d1411;hb=512ebbafa4666521b5a8acef939e89dcec6e2643;hp=7f8780a66316b130ece9560be6423c7d1e6bfb5c;hpb=c953cbb6ffc2fd50e736230f4e6976a025983cff;p=ctsim.git diff --git a/include/scanner.h b/include/scanner.h index 7f8780a..09ab796 100644 --- a/include/scanner.h +++ b/include/scanner.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: scanner.h,v 1.20 2001/03/01 07:30:49 kevin Exp $ +** $Id: scanner.h,v 1.22 2001/09/24 09:40:42 kevin Exp $ ** ** ** This program is free software; you can redistribute it and/or modify @@ -75,29 +75,30 @@ class Scanner Scanner (const Phantom& phm, const char* const geometryName, int nDet, - int nView, int nSample, const double rot_anglen, + int nView, int iOffsetView, int nSample, const double rot_anglen, double dFocalLengthRatio, double dCenterDetectorRatio, double dViewRatio, double dScanRatio); ~Scanner(); void collectProjections (Projections& proj, const Phantom& phm, const int trace = Trace::TRACE_NONE, SGP* pSGP = NULL); - void collectProjections (Projections& proj, const Phantom& phm, const int iStartView, const int iNumViews, - bool bStoreAtViewPosition, const int trace = Trace::TRACE_NONE, SGP* pSGP = NULL); + void collectProjections (Projections& proj, const Phantom& phm, const int iStartView, const int iNumViews, const int iOffsetView, bool bStoreAtViewPosition, const int trace = Trace::TRACE_NONE, SGP* pSGP = NULL); - void collectProjections (Projections& proj, const Phantom& phm, const int iStartView, const int iNumViews, - int iStorageOffset, const int trace = Trace::TRACE_NONE, SGP* pSGP = NULL); + void collectProjections (Projections& proj, const Phantom& phm, const int iStartView, const int iNumViews, const int iOffsetView, int iStorageOffset, const int trace = Trace::TRACE_NONE, SGP* pSGP = NULL); void setNView (int nView); + void setOffsetView (int iOffsetView); bool fail() const {return m_fail;} const std::string& failMessage() const {return m_failMessage;} unsigned int nDet() const {return m_nDet;} unsigned int nView() const {return m_nView;} - + unsigned int offsetView() const {return m_iOffsetView;} + unsigned int startView() const {return m_startView;} double rotInc() const {return m_rotInc;} double detInc() const {return m_detInc;} double detLen() const {return m_detLen;} + double detStart() const {return m_detStart;} double focalLength() const {return m_dFocalLength;} double sourceDetectorLength() const {return m_dSourceDetectorLength;} double centerDetectorLength() const {return m_dCenterDetectorLength;} @@ -121,6 +122,8 @@ class Scanner int m_idGeometry; unsigned int m_nDet; /* Number of detectors in array */ unsigned int m_nView; /* Number of rotated views */ + unsigned int m_iOffsetView; + unsigned int m_startView; unsigned int m_nSample; /* Number of rays per detector */ double m_dFocalLength; // Focal Length, distance from source to center double m_dSourceDetectorLength; // Distance from source to detectors @@ -136,6 +139,7 @@ class Scanner double m_rotLen; // Rotation angle length in radians (norm 2PI) double m_detInc; // Increment between centers of detectors double m_rotInc; // Increment in rotation angle between views + double m_detStart; double m_dXCenter; // Center of Phantom double m_dYCenter; double m_dAngularDetIncrement;