open3d.visualization.gui.SceneWidget#
- class open3d.visualization.gui.SceneWidget#
Displays 3D content
- class Constraints#
Constraints object for Widget.calc_preferred_size()
- __init__(self: open3d.pybind.visualization.gui.Widget.Constraints) None#
- property height#
- property width#
- class Controls(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)#
Enum class describing mouse interaction.
- FLY = 2#
- PICK_POINTS = 6#
- ROTATE_CAMERA = 0#
- ROTATE_CAMERA_SPHERE = 1#
- ROTATE_IBL = 4#
- ROTATE_MODEL = 5#
- ROTATE_SUN = 3#
- class EventCallbackResult(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)#
Returned by event handlers
- __init__(*args, **kwds)#
- as_integer_ratio()#
Return a pair of integers, whose ratio is equal to the original int.
The ratio is in lowest terms and has a positive denominator.
>>> (10).as_integer_ratio() (10, 1) >>> (-10).as_integer_ratio() (-10, 1) >>> (0).as_integer_ratio() (0, 1)
- bit_count()#
Number of ones in the binary representation of the absolute value of self.
Also known as the population count.
>>> bin(13) '0b1101' >>> (13).bit_count() 3
- bit_length()#
Number of bits necessary to represent self in binary.
>>> bin(37) '0b100101' >>> (37).bit_length() 6
- conjugate()#
Returns self, the complex conjugate of any int.
- from_bytes(byteorder='big', *, signed=False)#
Return the integer represented by the given array of bytes.
- bytes
Holds the array of bytes to convert. The argument must either support the buffer protocol or be an iterable object producing bytes. Bytes and bytearray are examples of built-in objects that support the buffer protocol.
- byteorder
The byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value. Default is to use ‘big’.
- signed
Indicates whether two’s complement is used to represent the integer.
- is_integer()#
Returns True. Exists for duck type compatibility with float.is_integer.
- to_bytes(length=1, byteorder='big', *, signed=False)#
Return an array of bytes representing an integer.
- length
Length of bytes object to use. An OverflowError is raised if the integer is not representable with the given number of bytes. Default is length 1.
- byteorder
The byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value. Default is to use ‘big’.
- signed
Determines whether two’s complement is used to represent the integer. If signed is False and a negative integer is given, an OverflowError is raised.
- CONSUMED = 2#
- HANDLED = 1#
- IGNORED = 0#
- denominator#
the denominator of a rational number in lowest terms
- imag#
the imaginary part of a complex number
- numerator#
the numerator of a rational number in lowest terms
- real#
the real part of a complex number
- __init__(self: open3d.pybind.visualization.gui.SceneWidget) None#
Creates an empty SceneWidget. Assign a Scene with the ‘scene’ property
- add_3d_label(self: open3d.pybind.visualization.gui.SceneWidget, arg0: Annotated[numpy.typing.ArrayLike, numpy.float32, '[3, 1]'], arg1: str) open3d.pybind.visualization.gui.Label3D#
Add a 3D text label to the scene. The label will be anchored at the specified 3D point.
- add_child(self: open3d.pybind.visualization.gui.Widget, arg0: open3d.pybind.visualization.gui.Widget) None#
Adds a child widget
- calc_preferred_size(self: open3d.pybind.visualization.gui.Widget, arg0: open3d.pybind.visualization.gui.LayoutContext, arg1: open3d.pybind.visualization.gui.Widget.Constraints) open3d.pybind.visualization.gui.Size#
Returns the preferred size of the widget. This is intended to be called only during layout, although it will also work during drawing. Calling it at other times will not work, as it requires some internal setup in order to function properly
- enable_scene_caching(self: open3d.pybind.visualization.gui.SceneWidget, arg0: bool) None#
Enable/Disable caching of scene content when the view or model is not changing. Scene caching can help improve UI responsiveness for large models and point clouds
- force_redraw(self: open3d.pybind.visualization.gui.SceneWidget) None#
Ensures scene redraws even when scene caching is enabled.
- get_children(self: open3d.pybind.visualization.gui.Widget) list[open3d.pybind.visualization.gui.Widget]#
Returns the array of children. Do not modify.
- look_at(self: open3d.pybind.visualization.gui.SceneWidget, arg0: Annotated[numpy.typing.ArrayLike, numpy.float32, '[3, 1]'], arg1: Annotated[numpy.typing.ArrayLike, numpy.float32, '[3, 1]'], arg2: Annotated[numpy.typing.ArrayLike, numpy.float32, '[3, 1]']) None#
look_at(center, eye, up): sets the camera view so that the camera is located at ‘eye’, pointing towards ‘center’, and oriented so that the up vector is ‘up’
- remove_3d_label(self: open3d.pybind.visualization.gui.SceneWidget, arg0: open3d.pybind.visualization.gui.Label3D) None#
Removes the 3D text label from the scene
- set_on_key(self: open3d.pybind.visualization.gui.SceneWidget, arg0: collections.abc.Callable[[open3d.pybind.visualization.gui.KeyEvent], int]) None#
Sets a callback for key events. This callback is passed a KeyEvent object. The callback must return EventCallbackResult.IGNORED, EventCallbackResult.HANDLED, or EventCallbackResult.CONSUMED.
- set_on_mouse(self: open3d.pybind.visualization.gui.SceneWidget, arg0: collections.abc.Callable[[open3d.pybind.visualization.gui.MouseEvent], int]) None#
Sets a callback for mouse events. This callback is passed a MouseEvent object. The callback must return EventCallbackResult.IGNORED, EventCallbackResult.HANDLED, or EventCallbackResult.CONSUMED.
- set_on_sun_direction_changed(self: open3d.pybind.visualization.gui.SceneWidget, arg0: collections.abc.Callable[[Annotated[numpy.typing.ArrayLike, numpy.float32, '[3, 1]']], None]) None#
Callback when user changes sun direction (only called in ROTATE_SUN control mode). Called with one argument, the [i, j, k] vector of the new sun direction
- set_view_controls(self: open3d.pybind.visualization.gui.SceneWidget, arg0: open3d.pybind.visualization.gui.SceneWidget.Controls) None#
Sets mouse interaction, e.g. ROTATE_OBJ
- setup_camera(*args, **kwargs)#
Overloaded function.
setup_camera(self: open3d.pybind.visualization.gui.SceneWidget, arg0: typing.SupportsFloat, arg1: open3d.pybind.geometry.AxisAlignedBoundingBox, arg2: typing.Annotated[numpy.typing.ArrayLike, numpy.float32, “[3, 1]”]) -> None
Configure the camera: setup_camera(field_of_view, model_bounds, center_of_rotation)
setup_camera(self: open3d.pybind.visualization.gui.SceneWidget, arg0: open3d.pybind.camera.PinholeCameraIntrinsic, arg1: typing.Annotated[numpy.typing.ArrayLike, numpy.float64, “[4, 4]”], arg2: open3d.pybind.geometry.AxisAlignedBoundingBox) -> None
setup_camera(intrinsics, extrinsic_matrix, model_bounds): sets the camera view
setup_camera(self: open3d.pybind.visualization.gui.SceneWidget, arg0: typing.Annotated[numpy.typing.ArrayLike, numpy.float64, “[3, 3]”], arg1: typing.Annotated[numpy.typing.ArrayLike, numpy.float64, “[4, 4]”], arg2: typing.SupportsInt, arg3: typing.SupportsInt, arg4: open3d.pybind.geometry.AxisAlignedBoundingBox) -> None
setup_camera(intrinsic_matrix, extrinsic_matrix, intrinsic_width_px, intrinsic_height_px, model_bounds): sets the camera view
- CONSUMED = 2#
- FLY = 2#
- HANDLED = 1#
- IGNORED = 0#
- PICK_POINTS = 6#
- ROTATE_CAMERA = 0#
- ROTATE_CAMERA_SPHERE = 1#
- ROTATE_IBL = 4#
- ROTATE_MODEL = 5#
- ROTATE_SUN = 3#
- property background_color#
Background color of the widget
- property center_of_rotation#
Current center of rotation (for ROTATE_CAMERA and ROTATE_CAMERA_SPHERE)
- property enabled#
True if widget is enabled, False if disabled
- property frame#
The widget’s frame. Setting this value will be overridden if the frame is within a layout.
- property scene#
The rendering.Open3DScene that the SceneWidget renders
- property tooltip#
Widget’s tooltip that is displayed on mouseover
- property visible#
True if widget is visible, False otherwise