diff options
author | Edoardo Pasca <edo.paskino@gmail.com> | 2019-05-10 11:45:17 +0100 |
---|---|---|
committer | Edoardo Pasca <edo.paskino@gmail.com> | 2019-05-10 11:45:17 +0100 |
commit | 6c0f6b62116800106e90f7fa704e14998c2cd032 (patch) | |
tree | 3f9f0844d2656431ba7046057312322444e960d8 /Wrappers | |
parent | e612820f1cf966e8e99478078d218fa9f7b26ec2 (diff) | |
download | framework-6c0f6b62116800106e90f7fa704e14998c2cd032.tar.gz framework-6c0f6b62116800106e90f7fa704e14998c2cd032.tar.bz2 framework-6c0f6b62116800106e90f7fa704e14998c2cd032.tar.xz framework-6c0f6b62116800106e90f7fa704e14998c2cd032.zip |
add get_order_by_label
Diffstat (limited to 'Wrappers')
-rwxr-xr-x | Wrappers/Python/ccpi/framework/framework.py | 33 |
1 files changed, 20 insertions, 13 deletions
diff --git a/Wrappers/Python/ccpi/framework/framework.py b/Wrappers/Python/ccpi/framework/framework.py index 4a2a9e8..a5c9160 100755 --- a/Wrappers/Python/ccpi/framework/framework.py +++ b/Wrappers/Python/ccpi/framework/framework.py @@ -104,18 +104,21 @@ class ImageGeometry(object): self.shape = shape self.dimension_labels = dim_labels else: - order = [] - for i, el in enumerate(labels): - for j, ek in enumerate(dim_labels): - if el == ek: - order.append(j) - break + order = self.get_order_by_label(labels, dim_labels) if order != [0,1,2]: # resort self.shape = tuple([shape[i] for i in order]) self.dimension_labels = labels - + def get_order_by_label(self, dimension_labels, default_dimension_labels): + order = [] + for i, el in enumerate(dimension_labels): + for j, ek in enumerate(default_dimension_labels): + if el == ek: + order.append(j) + break + return order + def get_min_x(self): return self.center_x - 0.5*self.voxel_num_x*self.voxel_size_x @@ -290,16 +293,20 @@ class AcquisitionGeometry(object): else: if len(labels) != len(dim_labels): raise ValueError('Wrong number of labels. Expected {} got {}'.format(len(dim_labels), len(labels))) - order = [] - for i, el in enumerate(labels): - for j, ek in enumerate(dim_labels): - if el == ek: - order.append(j) - break + order = self.get_order_by_label(labels, dim_labels) if order != [0,1,2]: # resort self.shape = tuple([shape[i] for i in order]) self.dimension_labels = labels + + def get_order_by_label(self, dimension_labels, default_dimension_labels): + order = [] + for i, el in enumerate(dimension_labels): + for j, ek in enumerate(default_dimension_labels): + if el == ek: + order.append(j) + break + return order |