aboutsummaryrefslogtreecommitdiff
path: root/src/itrans-lsq.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/itrans-lsq.c')
-rw-r--r--src/itrans-lsq.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/itrans-lsq.c b/src/itrans-lsq.c
index 1bf3d80..841a8b9 100644
--- a/src/itrans-lsq.c
+++ b/src/itrans-lsq.c
@@ -129,13 +129,16 @@ static void itrans_interpolate(int16_t *image, int width, int x, int y) {
}
-unsigned int itrans_peaksearch_lsq(int16_t *image, ControlContext *ctx, double tilt_degrees, ImageDisplay *imagedisplay) {
+unsigned int itrans_peaksearch_lsq(ImageRecord imagerecord, ControlContext *ctx, double tilt_degrees, ImageDisplay *imagedisplay) {
int16_t max_val = 0;
int width, height;
+ int16_t *image;
unsigned int n_reflections = 0;
- width = ctx->width; height = ctx->height;
+ width = imagerecord.width;
+ height = imagerecord.height;
+ image = imagerecord.image;
/* Least-Squares Craziness. NB Doesn't quite work... */
do {
@@ -256,14 +259,11 @@ unsigned int itrans_peaksearch_lsq(int16_t *image, ControlContext *ctx, double t
double frac;
printf("Fit converged after %i iterations: Centre %3i,%3i, a=%f b=%f c=%f d=%f e=%f f=%f\n", iter, x, y, ga, gb, gc, gd, ge, gf);
- if ( ctx->fmode == FORMULATION_PIXELSIZE ) {
- reflection_add_from_reciprocal(ctx, (x-ctx->x_centre)*ctx->pixel_size, (y-ctx->y_centre)*ctx->pixel_size,
+ if ( imagerecord.fmode == FORMULATION_PIXELSIZE ) {
+ reflection_add_from_reciprocal(ctx, (x-imagerecord.x_centre)*imagerecord.pixel_size, (y-imagerecord.y_centre)*imagerecord.pixel_size,
tilt_degrees, image[x + width*y]);
} else {
- reflection_add_from_dp(ctx, (x-ctx->x_centre), (y-ctx->y_centre), tilt_degrees, image[x + width*y]);
- }
- if ( ctx->first_image ) {
- imagedisplay_mark_point(imagedisplay, x, y);
+ reflection_add_from_dp(ctx, (x-imagerecord.x_centre), (y-imagerecord.y_centre), tilt_degrees, image[x + width*y]);
}
n_reflections++;
@@ -333,3 +333,4 @@ unsigned int itrans_peaksearch_lsq(int16_t *image, ControlContext *ctx, double t
return n_reflections;
}
+