X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=include%2Fprojections.h;h=d2fe89c0e6a286f58c7ae9f5c98fa76cd9c2780b;hp=b86f448a9edd091f7c45248c5d4b355c1c6b9a6b;hb=3ea498d51ce4597e9649cd21f155b51175ea0bea;hpb=9ff5b5165b2c8871bd4b29ccd5ca794638414615 diff --git a/include/projections.h b/include/projections.h index b86f448..d2fe89c 100644 --- a/include/projections.h +++ b/include/projections.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: projections.h,v 1.32 2001/03/13 04:44:25 kevin Exp $ +** $Id: projections.h,v 1.35 2001/03/21 21:45:31 kevin Exp $ ** ** ** This program is free software; you can redistribute it and/or modify @@ -65,7 +65,7 @@ public: THETA_RANGE_FOLD_TO_PI, }; - ParallelRaysums (Projections* pProjections, int iThetaRange); + ParallelRaysums (const Projections* pProjections, int iThetaRange); ~ParallelRaysums (); typedef std::vector CoordinateContainer; @@ -84,6 +84,7 @@ private: CoordinateContainer m_vecpCoordinates; CoordinateContainer m_vecpSortedByT; CoordinateContainer m_vecpSortedByTheta; + ParallelRaysumCoordinate* m_pCoordinates; int m_iNumCoordinates; int m_iNumView; int m_iNumDet; @@ -128,13 +129,15 @@ class Projections bool detarrayRead (fnetorderstream& fs, DetectorArray& darray, const int view_num); bool detarrayWrite (fnetorderstream& fs, const DetectorArray& darray, const int view_num); - Projections* interpolateToParallel(); + Projections* interpolateToParallel() const; bool convertPolar (ImageFile& rIF, int iInterpolation); bool convertFFTPolar (ImageFile& rIF, int iInterpolation, int iZeropad); - bool calcArrayPolarCoordinates (unsigned int nx, unsigned int ny, double** ppdView, double** ppdDet); + void calcArrayPolarCoordinates (unsigned int nx, unsigned int ny, double** ppdView, double** ppdDet, + int iNumDetWithZeros, double dZeropadRatio, double dDetInc); void interpolatePolar (ImageFileArray& v, ImageFileArray& vImag, unsigned int nx, unsigned int ny, std::complex** ppcDetValue, - double** ppdDet, double** ppdView, unsigned int nView, unsigned int nDet, int iInterpolate); + double** ppdDet, double** ppdView, unsigned int nView, unsigned int nDet, unsigned int nDetWithZeros, + int iInterpolate); bool reconstruct (ImageFile& im, const char* const filterName, double filt_param, const char* const filterMethodName, const int zeropad, const char* frequencyFilterName, const char* const interpName, int interp_param, const char* const backprojName, const int trace) const;