sas.qtgui.Utilities.OrientationViewer package

Subpackages

Submodules

sas.qtgui.Utilities.OrientationViewer.OrientationViewer module

class sas.qtgui.Utilities.OrientationViewer.OrientationViewer.OrientationViewer(parent=None)

Bases: QWidget

Orientation viewer widget

__doc__ = ' Orientation viewer widget '
__init__(self, /, parent: PySide6.QtWidgets.QWidget | None = None, f: PySide6.QtCore.Qt.WindowType = Default(Qt.WindowFlags), *, modal: bool | None = None, windowModality: PySide6.QtCore.Qt.WindowModality | None = None, enabled: bool | None = None, geometry: PySide6.QtCore.QRect | None = None, frameGeometry: PySide6.QtCore.QRect | None = None, normalGeometry: PySide6.QtCore.QRect | None = None, x: int | None = None, y: int | None = None, pos: PySide6.QtCore.QPoint | None = None, frameSize: PySide6.QtCore.QSize | None = None, size: PySide6.QtCore.QSize | None = None, width: int | None = None, height: int | None = None, rect: PySide6.QtCore.QRect | None = None, childrenRect: PySide6.QtCore.QRect | None = None, childrenRegion: PySide6.QtGui.QRegion | None = None, sizePolicy: PySide6.QtWidgets.QSizePolicy | None = None, minimumSize: PySide6.QtCore.QSize | None = None, maximumSize: PySide6.QtCore.QSize | None = None, minimumWidth: int | None = None, minimumHeight: int | None = None, maximumWidth: int | None = None, maximumHeight: int | None = None, sizeIncrement: PySide6.QtCore.QSize | None = None, baseSize: PySide6.QtCore.QSize | None = None, palette: PySide6.QtGui.QPalette | None = None, font: PySide6.QtGui.QFont | None = None, cursor: PySide6.QtGui.QCursor | None = None, mouseTracking: bool | None = None, tabletTracking: bool | None = None, isActiveWindow: bool | None = None, focusPolicy: PySide6.QtCore.Qt.FocusPolicy | None = None, focus: bool | None = None, contextMenuPolicy: PySide6.QtCore.Qt.ContextMenuPolicy | None = None, updatesEnabled: bool | None = None, visible: bool | None = None, minimized: bool | None = None, maximized: bool | None = None, fullScreen: bool | None = None, sizeHint: PySide6.QtCore.QSize | None = None, minimumSizeHint: PySide6.QtCore.QSize | None = None, acceptDrops: bool | None = None, windowTitle: str | None = None, windowIcon: PySide6.QtGui.QIcon | None = None, windowIconText: str | None = None, windowOpacity: float | None = None, windowModified: bool | None = None, toolTip: str | None = None, toolTipDuration: int | None = None, statusTip: str | None = None, whatsThis: str | None = None, accessibleName: str | None = None, accessibleDescription: str | None = None, accessibleIdentifier: str | None = None, layoutDirection: PySide6.QtCore.Qt.LayoutDirection | None = None, autoFillBackground: bool | None = None, styleSheet: str | None = None, locale: PySide6.QtCore.QLocale | None = None, windowFilePath: str | None = None, inputMethodHints: PySide6.QtCore.Qt.InputMethodHint | None = None) None

Initialize self. See help(type(self)) for accurate signature.

__module__ = 'sas.qtgui.Utilities.OrientationViewer.OrientationViewer'
_set_image_data(orientation: Orientation)

Set the data on the plot

a = 10
arrow_color = ColorSpecification(method=<ColorSpecificationMethod.UNIFORM: 1>, data=array([0.9, 0.9, 0.9, 1. ]))
arrow_size = 0.2
b = 40
c = 100
closeEvent(self, event: PySide6.QtGui.QCloseEvent, /) None
property colormap: str
static create_calculator()

Make a parallelepiped model calculator for q range -qmax to qmax with n samples

static create_ghost()

Helper function: Create a ghost cube

cube_color = ColorSpecification(method=<ColorSpecificationMethod.UNIFORM: 1>, data=array([0. , 0.8, 0. , 1. ]))
ghost_color = ColorSpecification(method=<ColorSpecificationMethod.UNIFORM: 1>, data=array([0. , 0.6, 0.2, 1. ]))
log_I_max = 10
log_I_min = -3
log_I_range = 13
n_ghosts_per_perameter = 8
n_q_samples = 128
onHelp()
on_angle_changed(orientation: Orientation | None)

Response to angle change

on_angle_changing(orientation: Orientation | None)

Response to angle change

orient_ghosts(orientation: Orientation)
polydispersity_distribution = 'gaussian'
polydispersity_sample_count(orientation)

Work out how many samples to do for the polydispersity

q_max = 0.5
scattering_data(orientation: Orientation) ndarray
screen_scale = 0.01
staticMetaObject = PySide6.QtCore.QMetaObject("OrientationViewer" inherits "QWidget": )
sas.qtgui.Utilities.OrientationViewer.OrientationViewer.main()
sas.qtgui.Utilities.OrientationViewer.OrientationViewer.show_orientation_viewer()

sas.qtgui.Utilities.OrientationViewer.OrientationViewerController module

class sas.qtgui.Utilities.OrientationViewer.OrientationViewerController.Orientation(theta: int = 0, phi: int = 0, psi: int = 0, dtheta: int = 0, dphi: int = 0, dpsi: int = 0)

Bases: NamedTuple

Data sent when updating the plot

__annotations__ = {'dphi': <class 'int'>, 'dpsi': <class 'int'>, 'dtheta': <class 'int'>, 'phi': <class 'int'>, 'psi': <class 'int'>, 'theta': <class 'int'>}
__doc__ = ' Data sent when updating the plot'
__getnewargs__()

Return self as a plain tuple. Used by copy and pickle.

__match_args__ = ('theta', 'phi', 'psi', 'dtheta', 'dphi', 'dpsi')
__module__ = 'sas.qtgui.Utilities.OrientationViewer.OrientationViewerController'
static __new__(_cls, theta: int = 0, phi: int = 0, psi: int = 0, dtheta: int = 0, dphi: int = 0, dpsi: int = 0)

Create new instance of Orientation(theta, phi, psi, dtheta, dphi, dpsi)

__orig_bases__ = (<function NamedTuple>,)
__repr__()

Return a nicely formatted representation string

__slots__ = ()
_asdict()

Return a new dict which maps field names to their values.

_field_defaults = {'dphi': 0, 'dpsi': 0, 'dtheta': 0, 'phi': 0, 'psi': 0, 'theta': 0}
_fields = ('theta', 'phi', 'psi', 'dtheta', 'dphi', 'dpsi')
classmethod _make(iterable)

Make a new Orientation object from a sequence or iterable

_replace(**kwds)

Return a new Orientation object replacing specified fields with new values

dphi: int

Alias for field number 4

dpsi: int

Alias for field number 5

dtheta: int

Alias for field number 3

phi: int

Alias for field number 1

psi: int

Alias for field number 2

theta: int

Alias for field number 0

class sas.qtgui.Utilities.OrientationViewer.OrientationViewerController.OrientationViewierController(parent=None)

Bases: QDialog, Ui_OrientationViewierControllerUI

Widget that controls the orientation viewer

__doc__ = ' Widget that controls the orientation viewer'
__init__(self, /, parent: PySide6.QtWidgets.QWidget | None = None, f: PySide6.QtCore.Qt.WindowType = Default(Qt.WindowFlags), *, sizeGripEnabled: bool | None = None, modal: bool | None = None) None

Initialize self. See help(type(self)) for accurate signature.

__module__ = 'sas.qtgui.Utilities.OrientationViewer.OrientationViewerController'
onSliderMoved()
onSliderSet()
setLabels(orientation: Orientation)
sliderMoved
sliderSet
staticMetaObject = PySide6.QtCore.QMetaObject("OrientationViewierController" inherits "QDialog": Methods:   #41 type=Signal, signature=sliderSet(PyObject), parameters=PyObject   #42 type=Signal, signature=sliderMoved(PyObject), parameters=PyObject )
sas.qtgui.Utilities.OrientationViewer.OrientationViewerController.main()

Show a demo of the slider

Module contents