diff options
author | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-10-26 16:29:19 +0000 |
---|---|---|
committer | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-10-26 16:29:19 +0000 |
commit | 84b931ca2c544b9bcc5a9e7a16e47ab548d5f422 (patch) | |
tree | 40b236830c3c117dd2d18f8f97a699ec6c74742f /src/reproject.c | |
parent | f1bf21e061a5aaed0281d8e715cabaa4e58eec6f (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.c | 14 |
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); } |