From 00ca159f4d9be602e8ddf4ae31dedd8007e575ee Mon Sep 17 00:00:00 2001
From: Nicola Vigano <nicola.vigano@esrf.fr>
Date: Thu, 22 Jan 2015 12:39:18 +0100
Subject: [PATCH] 6D-OrientationSuperSampling: fixed a few bugs introduced with
 multi-detector support

Signed-off-by: Nicola Vigano <nicola.vigano@esrf.fr>
---
 zUtil_Deformation/Gt6DReconstructionAlgorithmFactory.m | 2 +-
 zUtil_Deformation/GtOrientationSampling.m              | 7 ++++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/zUtil_Deformation/Gt6DReconstructionAlgorithmFactory.m b/zUtil_Deformation/Gt6DReconstructionAlgorithmFactory.m
index 9b797134..cc602245 100644
--- a/zUtil_Deformation/Gt6DReconstructionAlgorithmFactory.m
+++ b/zUtil_Deformation/Gt6DReconstructionAlgorithmFactory.m
@@ -222,7 +222,7 @@ classdef Gt6DReconstructionAlgorithmFactory < handle
                     for ii = 1:num_geoms
                         geom_ss = geometries_ss{ii};
                         for ii_ss = 1:numel(geom_ss)
-                            geom_ss{ii_ss}(:, 4:12) = geometries{ii}(:, 4:12) / self.volume_downscaling;
+                            geom_ss{ii_ss}(:, 4:12) = geom_ss{ii_ss}(:, 4:12) / self.volume_downscaling;
                         end
                         geometries_ss{ii} = geom_ss;
                     end
diff --git a/zUtil_Deformation/GtOrientationSampling.m b/zUtil_Deformation/GtOrientationSampling.m
index 11c5b837..c0bf9b27 100644
--- a/zUtil_Deformation/GtOrientationSampling.m
+++ b/zUtil_Deformation/GtOrientationSampling.m
@@ -693,6 +693,7 @@ classdef GtOrientationSampling < handle
                     dvecs = cat(1, allblobs(:).dvecsam);
                     omegas = cat(1, allblobs(:).omega);
 
+                    num_ss_orient = numel(self.lattice_ss(o_ii).gr{g_ii});
                     for n = 1:numel(self.parameters.detgeo)
                         proj_geom = gtGeoProjForReconstruction(...
                             dvecs, omegas, grain_center, bbpos_oi, [], ...
@@ -703,9 +704,9 @@ classdef GtOrientationSampling < handle
                             'ASTRA_grain');
 
                         count = 1;
-                        for ii = 1:num_orients
-                            num_vecs = size(self.lattice_ss(o_ii).gr{ii}.allblobs.dvecsam, 1);
-                            self.lattice_ss(o_ii).gr{ii}.allblobs.detector(n).proj_geom ...
+                        for ss_ii = 1:num_ss_orient
+                            num_vecs = size(self.lattice_ss(o_ii).gr{g_ii}{ss_ii}.allblobs.dvecsam, 1);
+                            self.lattice_ss(o_ii).gr{g_ii}{ss_ii}.allblobs.detector(n).proj_geom ...
                                 = proj_geom(count:(count+num_vecs-1), :);
                             count = count + num_vecs;
                         end
-- 
GitLab