11 #ifndef __stir_ZOOM_H__ 12 #define __stir_ZOOM_H__ 89 template <
typename elemT>
91 template <
typename elemT>
92 class RelatedViewgrams;
93 template <
typename elemT>
94 class VoxelsOnCartesianGrid;
95 template <
typename elemT>
96 class PixelsOnCartesianGrid;
97 template <
typename elemT>
98 class CartesianCoordinate3D;
99 template <
int num_dimensions,
typename elemT>
100 class BasicCoordinate;
114 const int min_tang_pos_num,
115 const int max_tang_pos_num,
116 const float x_offset_in_mm = 0,
117 const float y_offset_in_mm = 0);
125 const int min_tang_pos_num,
126 const int max_tang_pos_num,
127 const float x_offset_in_mm = 0,
128 const float y_offset_in_mm = 0);
137 const Viewgram<float>& in_viewgram,
138 const float x_offset_in_mm = 0,
139 const float y_offset_in_mm = 0);
147 VoxelsOnCartesianGrid<float>
zoom_image(
const VoxelsOnCartesianGrid<float>& image,
148 const CartesianCoordinate3D<float>& zooms,
149 const CartesianCoordinate3D<float>& offsets_in_mm,
150 const BasicCoordinate<3, int>& new_sizes,
151 const ZoomOptions = ZoomOptions::preserve_sum);
178 const CartesianCoordinate3D<float>& zooms,
179 const CartesianCoordinate3D<float>& offsets_in_mm,
180 const BasicCoordinate<3, int>& new_sizes,
181 const ZoomOptions = ZoomOptions::preserve_sum);
197 void zoom_image(VoxelsOnCartesianGrid<float>& image_out,
198 const VoxelsOnCartesianGrid<float>& image_in,
199 const ZoomOptions = ZoomOptions::preserve_sum);
209 void zoom_image(PixelsOnCartesianGrid<float>& image2D_out,
210 const PixelsOnCartesianGrid<float>& image2D_in,
211 const ZoomOptions = ZoomOptions::preserve_sum);
217 VoxelsOnCartesianGrid<float>
zoom_image(
const VoxelsOnCartesianGrid<float>& image,
219 const float x_offset_in_mm,
220 const float y_offset_in_mm,
222 const ZoomOptions = ZoomOptions::preserve_sum);
230 const float x_offset_in_mm,
231 const float y_offset_in_mm,
233 const ZoomOptions = ZoomOptions::preserve_sum);
void zoom_viewgram(Viewgram< float > &in_view, const float zoom, const int min_tang_pos_num, const int max_tang_pos_num, const float x_offset_in_mm, const float y_offset_in_mm)
zoom viewgram, replacing it with the new data
Definition: zoom.cxx:138
void zoom_image_in_place(VoxelsOnCartesianGrid< float > &image, const float zoom, const float x_offset_in_mm, const float y_offset_in_mm, const int new_size, const ZoomOptions zoom_options)
zoom image, replacing the first argument with the new data
Definition: zoom.cxx:264
VoxelsOnCartesianGrid< float > zoom_image(const VoxelsOnCartesianGrid< float > &image, const float zoom, const float x_offset_in_mm, const float y_offset_in_mm, const int new_size, const ZoomOptions zoom_options)
zoom image, replacing the first argument with the new data
Definition: zoom.cxx:276
basic configuration include file
void zoom_viewgrams(RelatedViewgrams< float > &in_viewgrams, const float zoom, const int min_tang_pos_num, const int max_tang_pos_num, const float x_offset_in_mm, const float y_offset_in_mm)
zoom a RelatedViewgrams object, replacing it with the new data
Definition: zoom.cxx:98
Declaration of class stir::ZoomOptions.