sksurgerydavinci.widgets.Viewers module¶
Mono/Stereo viewing windows for Ardavinci
-
class
sksurgerydavinci.widgets.Viewers.
FakeOverlayOnVideoFeed
[source]¶ Bases:
object
Implement empty methods to replicate OverlayOnVideoFeed.
-
class
sksurgerydavinci.widgets.Viewers.
FakeVTKOverlayWindow
[source]¶ Bases:
object
Implement empty methods to replicate VTKOverlayWindow.
-
class
sksurgerydavinci.widgets.Viewers.
MockStereoViewer
(video_source)[source]¶ Bases:
sksurgerydavinci.widgets.Viewers.StereoViewerBase
Mock stereo viewer, duplicating a single camera input to multiple screens.
Parameters: video_source – OpenCV compatible video source (int or filename) -
staticMetaObject
= <PySide2.QtCore.QMetaObject object>¶
-
-
class
sksurgerydavinci.widgets.Viewers.
MonoViewer
(video_source)[source]¶ Bases:
sksurgerydavinci.widgets.Viewers.StereoViewerBase
Generates a VTK interactor UI with a single video stream as background. :param video_source: OpenCV compatible video source (int or filename)
Only use the left_view of StereoViewerBase. Set the other views to non-existent views.
-
staticMetaObject
= <PySide2.QtCore.QMetaObject object>¶
-
-
class
sksurgerydavinci.widgets.Viewers.
StereoViewer
(left_source, right_source)[source]¶ Bases:
sksurgerydavinci.widgets.Viewers.StereoViewerBase
Stereo viewer, creates an overlay window for each video input.
Parameters: - left_source – OpenCV compatible video source (int or filename)
- right_source – OpenCV compatible video source (int or filename)
-
staticMetaObject
= <PySide2.QtCore.QMetaObject object>¶
-
class
sksurgerydavinci.widgets.Viewers.
StereoViewerBase
[source]¶ Bases:
PySide2.QtWidgets.QWidget
Base class for StereoViewers.
Child classes implment the left/right/ui video feeds as appropriate.
-
add_vtk_models
(models)[source]¶ Add VTK models to all widgets.
Parameters: models (VTKSurfaceModel) – List of models to add.
-
are_widgets_on_different_screens
(screens)[source]¶ Check if each widget has been placed on it’s own screen. :param screens: List of screen numbers corresponding to the screen
each widget is displayed on.
-
maximize_left_and_right_widgets
()[source]¶ Fullscreen view for each widget. QWidget.setFullScreen() isn’t working properly in all cases, so resizing maunally instead.
-
on_record_start_clicked
()[source]¶ Start recording a video. In the MockStereoViewer we only need to record the ‘left’ input, as the right view is a duplicate of the left. The proper StereoViewer class extends this method to also record the right view.
-
set_external_screens
(output_screens)[source]¶ - Set the display screens for each widget, if
external monitors are available.
Parameters: output_screens (List of ints) – List of screens on which to put widgets
-
set_widget_screens
(screens_to_use)[source]¶ Move each of the widgets to a particular screen. If each widget is on it’s own screen, run fullscreen.
Parameters: screens_to_use – List of QScreen objects.
-
staticMetaObject
= <PySide2.QtCore.QMetaObject object>¶
-
sufficent_displays_for_stereo_view
()[source]¶ Check if there are enough additional displays to give each window it’s own screen.
-