def _create_task(self, sample, shape): """ Descript. : """ tasks = [] if isinstance(shape, GraphicsItemPoint): snapshot = self._graphics_manager_hwobj.get_snapshot(shape) cpos = copy.deepcopy(shape.get_centred_position()) cpos.snapshot_image = snapshot else: cpos = queue_model_objects.CentredPosition() cpos.snapshot_image = self._graphics_manager_hwobj.get_snapshot() if self._acq_widget.use_inverse_beam(): total_num_images = self._acquisition_parameters.num_images subwedge_size = self._acq_widget.get_num_subwedges() osc_range = self._acquisition_parameters.osc_range osc_start = self._acquisition_parameters.osc_start run_number = self._path_template.run_number subwedges = queue_model_objects.create_inverse_beam_sw(total_num_images, subwedge_size, osc_range, osc_start, run_number) self._acq_widget.set_use_inverse_beam(False) for sw in subwedges: tasks.extend(self.create_dc(sample, sw[3], sw[0], sw[1], sw[2], cpos=cpos, inverse_beam = True)) self._path_template.run_number += 1 else: tasks.extend(self.create_dc(sample, cpos=cpos)) self._path_template.run_number += 1 return tasks
def _create_task(self, sample, shape): """ Descript. : """ tasks = [] if isinstance(shape, GraphicsItemPoint): snapshot = self._graphics_manager_hwobj.get_scene_snapshot(shape) cpos = copy.deepcopy(shape.get_centred_position()) cpos.snapshot_image = snapshot else: cpos = queue_model_objects.CentredPosition() cpos.snapshot_image = self._graphics_manager_hwobj.get_scene_snapshot() if self._acq_widget.use_inverse_beam(): total_num_images = self._acquisition_parameters.num_images subwedge_size = self._acq_widget.get_num_subwedges() osc_range = self._acquisition_parameters.osc_range osc_start = self._acquisition_parameters.osc_start run_number = self._path_template.run_number subwedges = queue_model_objects.create_inverse_beam_sw(total_num_images, subwedge_size, osc_range, osc_start, run_number) self._acq_widget.set_use_inverse_beam(False) for sw in subwedges: tasks.extend(self.create_dc(sample, sw[3], sw[0], sw[1], sw[2], cpos=cpos, inverse_beam = True)) self._path_template.run_number += 1 else: tasks.extend(self.create_dc(sample, cpos=cpos)) self._path_template.run_number += 1 return tasks
def _create_task(self, sample, shape): tasks = [] if not shape: cpos = qmo.CentredPosition() cpos.snapshot_image = self._shape_history.get_snapshot([]) else: # Shapes selected and sample is mounted, get the # centred positions for the shapes if isinstance(shape, shape_history.Point): snapshot = self._shape_history.\ get_snapshot([shape.qub_point]) cpos = copy.deepcopy(shape.get_centred_positions()[0]) cpos.snapshot_image = snapshot if self._acq_widget.use_inverse_beam(): total_num_images = self._acquisition_parameters.num_images subwedge_size = self._acq_widget.get_num_subwedges() osc_range = self._acquisition_parameters.osc_range osc_start = self._acquisition_parameters.osc_start run_number = self._path_template.run_number subwedges = qmo.create_inverse_beam_sw(total_num_images, subwedge_size, osc_range, osc_start, run_number) self._acq_widget.set_use_inverse_beam(False) for sw in subwedges: tasks.extend( self.create_dc(sample, sw[3], sw[0], sw[1], sw[2], cpos=cpos, inverse_beam=True)) self._path_template.run_number += 1 else: tasks.extend(self.create_dc(sample, cpos=cpos)) self._path_template.run_number += 1 return tasks
def _create_task(self, sample, shape): tasks = [] if not shape: cpos = qmo.CentredPosition() cpos.snapshot_image = self._shape_history.get_snapshot([]) else: # Shapes selected and sample is mounted, get the # centred positions for the shapes if isinstance(shape, shape_history.Point): snapshot = self._shape_history.\ get_snapshot([shape.qub_point]) cpos = shape.get_centred_positions()[0] cpos.snapshot_image = snapshot if self._acq_widget.use_inverse_beam(): total_num_images = self._acquisition_parameters.num_images subwedge_size = self._acq_widget.get_num_subwedges() osc_range = self._acquisition_parameters.osc_range osc_start = self._acquisition_parameters.osc_start run_number = self._path_template.run_number subwedges = qmo.create_inverse_beam_sw(total_num_images, subwedge_size, osc_range, osc_start, run_number) self._acq_widget.set_use_inverse_beam(False) for sw in subwedges: tasks.extend(self.create_dc(sample, sw[3], sw[0], sw[1], sw[2], cpos=cpos, inverse_beam = True)) self._path_template.run_number += 1 else: tasks.extend(self.create_dc(sample, cpos=cpos)) self._path_template.run_number += 1 return tasks