changeset 985:08607b633ae0

Fixed bug in transformation of input sampling.
author neelin <neelin>
date Wed, 31 Jan 1996 15:22:02 +0000
parents 3fd07406192c
children a37c72ab3260
files progs/mincresample/mincresample.c progs/mincresample/mincresample.h
diffstat 2 files changed, 21 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/progs/mincresample/mincresample.c
+++ b/progs/mincresample/mincresample.c
@@ -10,10 +10,13 @@
 @CALLS      : 
 @CREATED    : February 8, 1993 (Peter Neelin)
 @MODIFIED   : $Log: mincresample.c,v $
-@MODIFIED   : Revision 3.4  1996-01-30 14:10:24  neelin
-@MODIFIED   : Added check for -transformation without -like, -tfm_input_sampling or
-@MODIFIED   : -use_input_sampling because of change in behaviour.
+@MODIFIED   : Revision 3.5  1996-01-31 15:22:02  neelin
+@MODIFIED   : Fixed bug in transformation of input sampling.
 @MODIFIED   :
+ * Revision 3.4  1996/01/30  14:10:24  neelin
+ * Added check for -transformation without -like, -tfm_input_sampling or
+ * -use_input_sampling because of change in behaviour.
+ *
  * Revision 3.3  1995/12/12  19:15:35  neelin
  * Added -spacetype, -talairach and -units options.
  *
@@ -102,7 +105,7 @@
 ---------------------------------------------------------------------------- */
 
 #ifndef lint
-static char rcsid[]="$Header: /private-cvsroot/minc/progs/mincresample/mincresample.c,v 3.4 1996-01-30 14:10:24 neelin Exp $";
+static char rcsid[]="$Header: /private-cvsroot/minc/progs/mincresample/mincresample.c,v 3.5 1996-01-31 15:22:02 neelin Exp $";
 #endif
 
 #include <stdlib.h>
@@ -384,6 +387,9 @@
                      "-use_input_sampling with -transformation\n");
       exit(EXIT_FAILURE);
    }
+   if (transform_input_sampling == SAMPLING_ACTION_NOT_SET) {
+      transform_input_sampling = TRUE;
+   }
 #endif
 
    /* Check for an inverted transform. This looks backwards because we 
@@ -981,7 +987,9 @@
 
          /* Make sure that direction cosines point the right way */
          if (transformed_volume_def->dircos[idim][idim] < 0.0) {
-            transformed_volume_def->dircos[idim][idim] *= -1.0;
+            VECTOR_SCALAR_MULT(transformed_volume_def->dircos[idim],
+                               transformed_volume_def->dircos[idim],
+                               -1.0);
             transformed_volume_def->step[idim] *= -1.0;
          }
       }
--- a/progs/mincresample/mincresample.h
+++ b/progs/mincresample/mincresample.h
@@ -6,9 +6,12 @@
 @CALLS      : 
 @CREATED    : February 8, 1993 (Peter Neelin)
 @MODIFIED   : $Log: mincresample.h,v $
-@MODIFIED   : Revision 3.3  1995-12-12 19:15:35  neelin
-@MODIFIED   : Added -spacetype, -talairach and -units options.
+@MODIFIED   : Revision 3.4  1996-01-31 15:22:02  neelin
+@MODIFIED   : Fixed bug in transformation of input sampling.
 @MODIFIED   :
+ * Revision 3.3  1995/12/12  19:15:35  neelin
+ * Added -spacetype, -talairach and -units options.
+ *
  * Revision 3.2  1995/11/21  14:13:20  neelin
  * Transform input sampling with transformation and use this as default.
  * Added -tfm_input_sampling to specify above option.
@@ -245,9 +248,9 @@
 }
 
 #define VECTOR_SCALAR_MULT(result, vector, scalar) { \
-   result[XCOORD] = vector[XCOORD] * scalar; \
-   result[YCOORD] = vector[YCOORD] * scalar; \
-   result[ZCOORD] = vector[ZCOORD] * scalar; \
+   result[XCOORD] = vector[XCOORD] * (scalar); \
+   result[YCOORD] = vector[YCOORD] * (scalar); \
+   result[ZCOORD] = vector[ZCOORD] * (scalar); \
 }
 
 #ifdef INTERPOLATE