aboutsummaryrefslogtreecommitdiff
path: root/src/reproject.c
diff options
context:
space:
mode:
authortaw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1>2007-10-26 16:29:19 +0000
committertaw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1>2007-10-26 16:29:19 +0000
commit84b931ca2c544b9bcc5a9e7a16e47ab548d5f422 (patch)
tree40b236830c3c117dd2d18f8f97a699ec6c74742f /src/reproject.c
parentf1bf21e061a5aaed0281d8e715cabaa4e58eec6f (diff)
Initial refinement maths
git-svn-id: svn://cook.msm.cam.ac.uk:745/diff-tomo/dtr@179 bf6ca9ba-c028-0410-8290-897cf20841d1
Diffstat (limited to 'src/reproject.c')
-rw-r--r--src/reproject.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/reproject.c b/src/reproject.c
index 1726639..e919523 100644
--- a/src/reproject.c
+++ b/src/reproject.c
@@ -19,7 +19,7 @@
#include "displaywindow.h"
#include "image.h"
-ImageFeatureList *reproject_get_reflections(ImageRecord *image, ReflectionList *reflectionlist, ControlContext *ctx) {
+ImageFeatureList *reproject_get_reflections(ImageRecord *image, ReflectionList *reflectionlist) {
ImageFeatureList *flist;
Reflection *reflection;
@@ -178,7 +178,7 @@ ImageFeatureList *reproject_get_reflections(ImageRecord *image, ReflectionList *
}
/* Attempt to find the partner for "feature" from the feature list of "image" */
-static ImageFeature *reproject_find_partner(ImageFeature *feature, ImageRecord *image) {
+static ImageFeature *reproject_find_partner(ImageFeature *feature, ImageRecord *image, double *d) {
int i;
double dmin = +HUGE_VAL;
@@ -199,6 +199,7 @@ static ImageFeature *reproject_find_partner(ImageFeature *feature, ImageRecord *
}
if ( dmin <= 70.0 ) {
+ *d = dmin;
return &image->features->features[closest];
}
@@ -212,7 +213,12 @@ void reproject_partner_features(ImageFeatureList *flist, ImageRecord *image) {
int i;
for ( i=0; i<flist->n_features; i++ ) {
- flist->features[i].partner = reproject_find_partner(&flist->features[i], image);
+
+ double d = 0.0;
+
+ flist->features[i].partner = reproject_find_partner(&flist->features[i], image, &d);
+ flist->features[i].partner_d = d;
+
}
}
@@ -228,7 +234,7 @@ static void reproject_mark_peaks(ControlContext *ctx) {
yc = ctx->images->images[ctx->reproject_cur_image].y_centre;
/* Draw the reprojected peaks */
- rflist = reproject_get_reflections(&ctx->images->images[ctx->reproject_cur_image], ctx->cell_lattice, ctx);
+ rflist = reproject_get_reflections(&ctx->images->images[ctx->reproject_cur_image], ctx->cell_lattice);
for ( j=0; j<rflist->n_features; j++ ) {
imagedisplay_add_mark(ctx->reproject_id, xc+rflist->features[j].x, yc+rflist->features[j].y, IMAGEDISPLAY_MARK_CIRCLE_1);
}