diff --git a/csaxs_bec/bec_ipython_client/plugins/flomni/flomni.py b/csaxs_bec/bec_ipython_client/plugins/flomni/flomni.py index 1128d87..9459865 100644 --- a/csaxs_bec/bec_ipython_client/plugins/flomni/flomni.py +++ b/csaxs_bec/bec_ipython_client/plugins/flomni/flomni.py @@ -983,56 +983,61 @@ class FlomniAlignmentMixin: def read_alignment_offset( self, - dir_path=os.path.expanduser("~/Data10/specES1/internal/"), + dir_path=os.path.expanduser("~/data/raw/logs/"), setup="flomni", use_vertical_default_values=True, + get_data_from_gui=False, ): - """ - Read the alignment parameters from xray eye fit. + if not get_data_from_gui: + """ + Read the alignment parameters from xray eye fit. - """ - tomo_alignment_fit = np.zeros((2, 5)) - # with open(os.path.join(dir_path, "ptychotomoalign_Ax.txt"), "r") as file: - # tomo_alignment_fit[0][0] = file.readline() + """ + tomo_alignment_fit = np.zeros((2, 5)) + with open(os.path.join(dir_path, "ptychotomoalign_Ax.txt"), "r") as file: + tomo_alignment_fit[0][0] = file.readline() - # with open(os.path.join(dir_path, "ptychotomoalign_Bx.txt"), "r") as file: - # tomo_alignment_fit[0][1] = file.readline() + with open(os.path.join(dir_path, "ptychotomoalign_Bx.txt"), "r") as file: + tomo_alignment_fit[0][1] = file.readline() - # with open(os.path.join(dir_path, "ptychotomoalign_Cx.txt"), "r") as file: - # tomo_alignment_fit[0][2] = file.readline() + with open(os.path.join(dir_path, "ptychotomoalign_Cx.txt"), "r") as file: + tomo_alignment_fit[0][2] = file.readline() - # with open(os.path.join(dir_path, "ptychotomoalign_Ay.txt"), "r") as file: - # tomo_alignment_fit[1][0] = file.readline() + with open(os.path.join(dir_path, "ptychotomoalign_Ay.txt"), "r") as file: + tomo_alignment_fit[1][0] = file.readline() - # with open(os.path.join(dir_path, "ptychotomoalign_By.txt"), "r") as file: - # tomo_alignment_fit[1][1] = file.readline() + with open(os.path.join(dir_path, "ptychotomoalign_By.txt"), "r") as file: + tomo_alignment_fit[1][1] = file.readline() - # with open(os.path.join(dir_path, "ptychotomoalign_Cy.txt"), "r") as file: - # tomo_alignment_fit[1][2] = file.readline() + with open(os.path.join(dir_path, "ptychotomoalign_Cy.txt"), "r") as file: + tomo_alignment_fit[1][2] = file.readline() - # with open(os.path.join(dir_path, "ptychotomoalign_Ay3.txt"), "r") as file: - # tomo_alignment_fit[1][3] = file.readline() + with open(os.path.join(dir_path, "ptychotomoalign_Ay3.txt"), "r") as file: + tomo_alignment_fit[1][3] = file.readline() - # with open(os.path.join(dir_path, "ptychotomoalign_Cy3.txt"), "r") as file: - # tomo_alignment_fit[1][4] = file.readline() + with open(os.path.join(dir_path, "ptychotomoalign_Cy3.txt"), "r") as file: + tomo_alignment_fit[1][4] = file.readline() - params = dev.omny_xray_gui.fit_params_x.get() + print("New alignment parameters loaded from filesystem, meaning Matlab fit:") - #amplitude - tomo_alignment_fit[0][0] = params['SineModel_0_amplitude'] - #phase - tomo_alignment_fit[0][1] = params['SineModel_0_shift'] - #offset - tomo_alignment_fit[0][2] = params['LinearModel_1_intercept'] - print("applying vertical default values from mirror calibration, not from fit!") - tomo_alignment_fit[1][0] = 0 - tomo_alignment_fit[1][1] = 0 - tomo_alignment_fit[1][2] = 0 - tomo_alignment_fit[1][3] = 0 - tomo_alignment_fit[1][4] = 0 + else: + params = dev.omny_xray_gui.fit_params_x.get() + + #amplitude + tomo_alignment_fit[0][0] = params['SineModel_0_amplitude'] + #phase + tomo_alignment_fit[0][1] = params['SineModel_0_shift'] + #offset + tomo_alignment_fit[0][2] = params['LinearModel_1_intercept'] + print("applying vertical default values from mirror calibration, not from fit!") + tomo_alignment_fit[1][0] = 0 + tomo_alignment_fit[1][1] = 0 + tomo_alignment_fit[1][2] = 0 + tomo_alignment_fit[1][3] = 0 + tomo_alignment_fit[1][4] = 0 + print("New alignment parameters loaded based on Xray eye alignment GUI:") - print("New alignment parameters loaded:") print( f"X Amplitude {tomo_alignment_fit[0][0]}, " f"X Phase {tomo_alignment_fit[0][1]}, " diff --git a/csaxs_bec/bec_ipython_client/plugins/flomni/x_ray_eye_align.py b/csaxs_bec/bec_ipython_client/plugins/flomni/x_ray_eye_align.py index 1ec5465..0de7b6c 100644 --- a/csaxs_bec/bec_ipython_client/plugins/flomni/x_ray_eye_align.py +++ b/csaxs_bec/bec_ipython_client/plugins/flomni/x_ray_eye_align.py @@ -231,10 +231,6 @@ class XrayEyeAlign: fovx = self._xray_fov_xy[0] * self.PIXEL_CALIBRATION * 1000 / 2 fovy = self._xray_fov_xy[1] * self.PIXEL_CALIBRATION * 1000 / 2 - self.tomo_rotate(0) - - umv(dev.rtx, 0) - if keep_shutter_open: if self.flomni.OMNYTools.yesno("Close the shutter now?", "y"): dev.omnyfsh.fshclose() @@ -251,8 +247,11 @@ class XrayEyeAlign: print("Automatically loading new alignment parameters from xray eye alignment.\n") - self.flomni.read_alignment_offset() + self.flomni.read_alignment_offset(get_data_from_gui=True) + self.tomo_rotate(0) + + umv(dev.rtx, 0) print("You are ready to remove the xray eye and start ptychography scans.") def write_output(self):