diff --git a/src/aare/gui/panels/rotation_data_collection.py b/src/aare/gui/panels/rotation_data_collection.py index 8edaa9ae..8ee971da 100644 --- a/src/aare/gui/panels/rotation_data_collection.py +++ b/src/aare/gui/panels/rotation_data_collection.py @@ -136,16 +136,36 @@ class RotationDataCollectionPanel(ScanSettingsPanel): logger.error("Cannot run measurement because of check") return screening_settings = self.screening_type.currentData() - r = RotationScanRequest( - file_prefix=str(add_screening_to_path(self._filename)), - start_omega_deg=self.start_angle.value, - wedge_omega_deg=self.screening_image_angle.value, - incr_omega_deg=screening_settings["omega_step_deg"], - steps=screening_settings["steps"], - dtz=self._dtz, - transmission=self._transmission, - screening=True, - exp_time_s=self.screening_image_time_enter.value) + + is_single_image = ( + screening_settings["steps"] == 1 + and screening_settings["omega_step_deg"] == 0 + ) + + if is_single_image: + r = RotationScanRequest( + file_prefix=str(add_screening_to_path(self._filename)), + start_omega_deg=self.start_angle.value, + incr_omega_deg=self.screening_image_angle.value, + steps=1, + dtz=self._dtz, + transmission=self._transmission, + screening=False, + exp_time_s=self.screening_image_time_enter.value, + ) + else: + r = RotationScanRequest( + file_prefix=str(add_screening_to_path(self._filename)), + start_omega_deg=self.start_angle.value, + wedge_omega_deg=self.screening_image_angle.value, + incr_omega_deg=screening_settings["omega_step_deg"], + steps=screening_settings["steps"], + dtz=self._dtz, + transmission=self._transmission, + screening=True, + exp_time_s=self.screening_image_time_enter.value, + ) + self.rotation_scan.emit(r) self.viewer_track_online.emit()