Plot3DWidget: OpenGL scene widget

This module provides a Qt widget embedding an OpenGL scene.

Plot3DWidget

class Plot3DWidget(parent=None, f=<PyQt5.QtCore.Qt.WindowFlags object>)[source]

Bases: silx.gui._glutils.OpenGLWidget.OpenGLWidget

OpenGL widget with a 3D viewport and an overview.

sigInteractiveModeChanged

Signal emitted when the interactive mode has changed

sigStyleChanged

Signal emitted when the style of the scene has changed

It provides the updated property.

sigSceneClicked

Signal emitted when the scene is clicked with the left mouse button.

It provides the (x, y) clicked mouse position in logical widget pixel coordinates.

class FogMode(value)[source]

Bases: silx.utils.enum.Enum

Different mode to render the scene with fog

NONE = 'none'

No fog effect

LINEAR = 'linear'

Linear fog through the whole scene

setInteractiveMode(mode)[source]

Set the interactive mode.

Parameters

mode (str) – The interactive mode: ‘rotate’, ‘pan’ or None

getInteractiveMode()[source]

Returns the interactive mode in use.

Return type

str

setProjection(projection)[source]

Change the projection in use.

Parameters

projection (str) – In ‘perspective’, ‘orthographic’.

getProjection()[source]

Return the current camera projection mode as a str.

See setProjection()

setBackgroundColor(color)[source]

Set the background color of the OpenGL view.

Parameters

color (QColor, str or array-like of 3 or 4 float in [0., 1.] or uint8) – RGB color of the isosurface: name, #RRGGBB or RGB values

getBackgroundColor()[source]

Returns the RGBA background color (QColor).

setFogMode(mode)[source]

Set the kind of fog to use for the whole scene.

Parameters

mode (Union[str,FogMode]) – The mode to use

Raises

ValueError – If mode is not supported

getFogMode()[source]

Returns the kind of fog in use

Returns

The kind of fog in use

Return type

FogMode

isOrientationIndicatorVisible()[source]

Returns True if the orientation indicator is displayed.

Return type

bool

setOrientationIndicatorVisible(visible)[source]

Set the orientation indicator visibility.

Parameters

visible (bool) – True to show

centerScene()[source]

Position the center of the scene at the center of rotation.

resetZoom(face='front')[source]

Reset the camera position to a default.

Parameters

face (str) – The direction the camera is looking at: side, front, back, top, bottom, right, left. Default: front.

sizeHint(self) QSize[source]
initializeGL()[source]

Override to implement OpenGL initialization.

paintGL()[source]

Override to implement OpenGL rendering.

resizeGL(width, height)[source]

Override to implement resize of OpenGL framebuffer.

Parameters
  • width (int) – Width in device-independent pixels

  • height (int) – Height in device-independent pixels

grabGL()[source]

Renders the OpenGL scene into a numpy array

Returns

OpenGL scene RGB rasterization

Return type

QImage

wheelEvent(self, QWheelEvent)[source]
keyPressEvent(self, QKeyEvent)[source]
keyReleaseEvent(event)[source]

Catch Ctrl key release

mousePressEvent(self, QMouseEvent)[source]
mouseMoveEvent(self, QMouseEvent)[source]
mouseReleaseEvent(self, QMouseEvent)[source]