summaryrefslogtreecommitdiffstats
path: root/src/CudaFDKAlgorithm3D.cpp
diff options
context:
space:
mode:
authorWillem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl>2017-11-22 17:02:25 +0100
committerWillem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl>2017-11-22 17:07:30 +0100
commit85b619e6c5c04faa6a365c5be4b9bc8c7db445fa (patch)
treedfb33f5621b3be27a6ffc5827fa208f87a9ba234 /src/CudaFDKAlgorithm3D.cpp
parent845b398d9e2e078d7cb2a1da84fadceca66306a2 (diff)
downloadastra-85b619e6c5c04faa6a365c5be4b9bc8c7db445fa.tar.gz
astra-85b619e6c5c04faa6a365c5be4b9bc8c7db445fa.tar.bz2
astra-85b619e6c5c04faa6a365c5be4b9bc8c7db445fa.tar.xz
astra-85b619e6c5c04faa6a365c5be4b9bc8c7db445fa.zip
Allow cone_vec for FDK
NB: This will let you do mathematically nonsensical things, since FDK does not support non-circular cone geometries. However, this does let you use translated detectors, for example.
Diffstat (limited to 'src/CudaFDKAlgorithm3D.cpp')
-rw-r--r--src/CudaFDKAlgorithm3D.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/CudaFDKAlgorithm3D.cpp b/src/CudaFDKAlgorithm3D.cpp
index d503351..b2b9c06 100644
--- a/src/CudaFDKAlgorithm3D.cpp
+++ b/src/CudaFDKAlgorithm3D.cpp
@@ -31,6 +31,7 @@ along with the ASTRA Toolbox. If not, see <http://www.gnu.org/licenses/>.
#include "astra/CudaProjector3D.h"
#include "astra/ConeProjectionGeometry3D.h"
+#include "astra/ConeVecProjectionGeometry3D.h"
#include "astra/CompositeGeometryManager.h"
#include "astra/Logging.h"
@@ -82,7 +83,7 @@ bool CCudaFDKAlgorithm3D::_check()
ASTRA_CONFIG_CHECK(CReconstructionAlgorithm3D::_check(), "CUDA_FDK", "Error in ReconstructionAlgorithm3D initialization");
const CProjectionGeometry3D* projgeom = m_pSinogram->getGeometry();
- ASTRA_CONFIG_CHECK(dynamic_cast<const CConeProjectionGeometry3D*>(projgeom), "CUDA_FDK", "Error setting FDK geometry");
+ ASTRA_CONFIG_CHECK(dynamic_cast<const CConeProjectionGeometry3D*>(projgeom) || dynamic_cast<const CConeVecProjectionGeometry3D*>(projgeom), "CUDA_FDK", "Error setting FDK geometry");
const CVolumeGeometry3D* volgeom = m_pReconstruction->getGeometry();