From b8ee38bdada2067f4351b27d841e68580bcbff8e Mon Sep 17 00:00:00 2001
From: Willem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl>
Date: Mon, 8 Feb 2016 16:21:16 +0100
Subject: Restrict FDK_CUDA to cube voxels for now

---
 src/CudaFDKAlgorithm3D.cpp | 11 +++++++++++
 1 file changed, 11 insertions(+)

(limited to 'src/CudaFDKAlgorithm3D.cpp')

diff --git a/src/CudaFDKAlgorithm3D.cpp b/src/CudaFDKAlgorithm3D.cpp
index b5ce545..e101a42 100644
--- a/src/CudaFDKAlgorithm3D.cpp
+++ b/src/CudaFDKAlgorithm3D.cpp
@@ -81,6 +81,17 @@ bool CCudaFDKAlgorithm3D::_check()
 	const CProjectionGeometry3D* projgeom = m_pSinogram->getGeometry();
 	ASTRA_CONFIG_CHECK(dynamic_cast<const CConeProjectionGeometry3D*>(projgeom), "CUDA_FDK", "Error setting FDK geometry");
 
+
+	const CVolumeGeometry3D* volgeom = m_pReconstruction->getGeometry();
+	bool cube = true;
+	if (abs(volgeom->getPixelLengthX() / volgeom->getPixelLengthY() - 1.0) > 0.00001)
+		cube = false;
+	if (abs(volgeom->getPixelLengthX() / volgeom->getPixelLengthZ() - 1.0) > 0.00001)
+		cube = false;
+	ASTRA_CONFIG_CHECK(cube, "CUDA_FDK", "Voxels must be cubes for FDK");
+
+
+
 	return true;
 }
 
-- 
cgit v1.2.3