orangecontrib.tomwer.widgets.reconstruction.SAAxisOW.SAAxisOW#

class orangecontrib.tomwer.widgets.reconstruction.SAAxisOW.SAAxisOW(*args, **kwargs)#

Widget for semi-automatic center of rotation calculation

behavior within a workflow:

  • when a scan arrived:

    • if he already has a center of rotation defined (if the axis widget has been defined for example) it will be used as ‘estimated center of rotation’

    • if no cor has been computed yet and if the .nx entry contains information regarding an “estimated_cor_from_motor” this value will be set

  • if autofocus option is lock:
    • launch the series of reconstruction (with research width defined) and the estimated center of rotation if defined. Once the reconstruction is ended and if the autofocus button is still lock it will select the cor with the highest value and mode to workflow downstream.

  • hint: you can define a “multi-step” half-automatic center of rotation research by creating several “saaxis” widget and reducing the research width.

Details about Score calculation

class Inputs#
cluster_in = Input(name='cluster_config', type=<class 'tomwer.core.cluster.cluster.SlurmClusterConfiguration'>, handler='setCluster', ...)#
data = Input(name='data', type=<class 'tomwer.core.scan.scanbase.TomwerScanBase'>, handler='process', ...)#
data_recompute = Input(name='change recons params', type=<class 'tomwer.core.scan.scanbase._TomwerBaseDock'>, handler='reprocess', ...)#
class Outputs#
data = Output(name='data', type=<class 'tomwer.core.scan.scanbase.TomwerScanBase'>, ...)#
cancel(scan)#

cancel (abort) processing of given dataset. If dataset is empty then conside this is the current processing that must be cancelled

compute()#
description: str = 'Reconstruct a slice with different center of rotation (cor) values'#

Short widget description, displayed in canvas help tooltips.

ewokstaskclass#

alias of SAAxisTask

getConfiguration()#
getCurrentCorValue()#
getWaitingOverlay()#
icon: str = 'icons/saaxis.png'#

Widget icon path, relative to the defining module.

id = 'orange.widgets.tomwer.sa_axis'#
isAutoFocusLock()#
keywords: Union[str, List[str]] = ['multi', 'multi-cor', 'tomography', 'semi automatic', 'half automatic', 'axis', 'tomwer', 'reconstruction', 'rotation', 'position', 'center of rotation', 'saaxis']#

Widget keywords, used for finding it in the quick menu.

load_sinogram()#
lockAutofocus(lock)#
name: str = 'multi-cor (sa-axis)'#

Widget name, as presented in the Canvas.

output_summaries: Dict[str, PartialSummary]#
priority: int = 21#

Widget priority, used for sorting within a category.

process(value)#
reprocess(value)#

Reprocess a dataset.

Parameters:

dataset (Dataset) – dataset to reprocess

resizing_enabled = True#

Should the widget’s window be resizeable? (if not, the widget will derive a fixed size constraint from its layout)

setCluster(value)#
setConfiguration(configuration)#
setEstimatedCorPosition(value)#
settingsHandler: SettingsHandler = <orangecontrib.tomwer.orange.settings.CallbackSettingsHandler object>#

Settings handler, can be overridden for context handling.

sigScanReady#

Signal emitted when a scan is ready

validateCurrentScan()#
want_main_area = True#

Should the widget construct a mainArea? (a resizable area to the right of the controlArea)