# sas.qtgui.Utilities.OrientationViewer package

## Subpackages

- sas.qtgui.Utilities.OrientationViewer.UI package
  - Submodules
  - sas.qtgui.Utilities.OrientationViewer.UI.OrientationViewerControllerUI module
    - `Ui_OrientationViewierControllerUI`
      - `Ui_OrientationViewierControllerUI.retranslateUi()`
      - `Ui_OrientationViewierControllerUI.setupUi()`
  - Module contents

## Submodules

## sas.qtgui.Utilities.OrientationViewer.OrientationViewer module

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

  Bases: `QWidget`

  Orientation viewer widget

  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(event)
  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

  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

  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