Browse Source

Use axis variation

Matthias Vogelgesang 9 years ago
parent
commit
0c1f9af2d7
1 changed files with 6 additions and 2 deletions
  1. 6 2
      lamino.c

+ 6 - 2
lamino.c

@@ -15,6 +15,7 @@ typedef struct {
     gdouble psi;
     gdouble px;
     gdouble py;
+    gdouble px_variation;
     gdouble v_origin[3];
     guint v_size[3];
 } Params;
@@ -171,8 +172,8 @@ run_reconstruction (Params *params)
     angle_step = (G_PI * 2.0) / params->num_radios;
     theta_rad = params->theta / 360. * G_PI * 2;
 
-    info ("Axis: x=%.1f  y=%.1f\n",
-          params->px, params->py);
+    info ("Axis: x=%.1f  y=%.1f  variation=%.1f\n",
+          params->px, params->py, params->px_variation);
 
     info ("Lamino: theta=%.3f  tau=%.3f  step=%.5f  fwidth=%d\n",
           theta_rad, params->tau, angle_step, fwidth);
@@ -204,6 +205,7 @@ run_reconstruction (Params *params)
                   "psi", params->psi,
                   "proj-ox", params->px,
                   "proj-oy", params->py,
+                  "proj-ox-variation", params->px_variation,
                   "vol-ox", params->v_size[0] / 2 + params->v_origin[0],
                   "vol-oy", params->v_size[1] / 2 + params->v_origin[1],
                   "vol-oz", params->v_size[2] / 2 + params->v_origin[2],
@@ -291,6 +293,7 @@ parse_params (Params *params, int argc, char **argv)
         { "psi", 0, 0, G_OPTION_ARG_DOUBLE, &params->psi, "Misalignment (psi)", "" },
         { "px", 0, 0, G_OPTION_ARG_DOUBLE, &params->px, "X coordinate of axis", "" },
         { "py", 0, 0, G_OPTION_ARG_DOUBLE, &params->py, "Y coordinate of axis", "" },
+        { "px-variation", 0, 0, G_OPTION_ARG_DOUBLE, &params->px_variation, "X axis variation", "" },
         { "vx", 0, 0, G_OPTION_ARG_DOUBLE, &params->v_origin[0], "X coordinate of box origin", "" },
         { "vy", 0, 0, G_OPTION_ARG_DOUBLE, &params->v_origin[1], "Y coordinate of box origin", "" },
         { "vz", 0, 0, G_OPTION_ARG_DOUBLE, &params->v_origin[2], "Z coordinate of box origin", "" },
@@ -337,6 +340,7 @@ main (int argc, char **argv)
         .psi = 0.0,
         .px = G_MAXDOUBLE,
         .py = G_MAXDOUBLE,
+        .px_variation = 0.0,
         .v_size = {256, 256, 256},
         .v_origin = {0.0, 0.0, 0.0},
     };