** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: backprojectors.cpp,v 1.19 2000/12/16 06:12:47 kevin Exp $
+** $Id: backprojectors.cpp,v 1.20 2000/12/18 09:31:26 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
nDet = proj.nDet();
iDetCenter = (nDet - 1) / 2; // index refering to L=0 projection
rotScale = proj.rotInc();
- rotScale /= (proj.nView() * proj.rotInc() / PI); // scale by number of PI rotations
+
+ if (proj.geometry() == Scanner::GEOMETRY_PARALLEL)\r
+ rotScale /= (proj.nView() * proj.rotInc() / PI); // scale by number of PI rotations\r
+ else if (proj.geometry() == Scanner::GEOMETRY_EQUIANGULAR || proj.geometry() == Scanner::GEOMETRY_EQUILINEAR)\r
+ rotScale /= (proj.nView() * proj.rotInc() / (2 * PI)); // scale by number of 2PI rotations\r
+ else\r
+ sys_error (ERR_SEVERE, "Invalid geometry type %d [Backproject::Backproject]", proj.geometry());\r
v = im.getArray();
nx = im.nx();