我可以在 Open3D 中使用 SceneWidget 获取点云的视角吗?

问题描述 投票:0回答:1

我想获取使用

SceneWidget()
显示的点云的相机视角,其场景设置如下:

self.window = gui.Application.instance.create_window("Open3D", width, height)
self._scene = gui.SceneWidget()
self._scene.scene = rendering.Open3DScene(self.window.renderer)

如果我使用

o3d.visualization.Visualizer()
,我可以使用
get_view_control()
获取它,但无法弄清楚如何使用
SceneWidget
获取它。

我尝试从

Visualizer()
获取渲染器对象,认为它可以传递给
rendering.Open3DScene()
Visualizer()
只有一个
get_render_option()

python opengl visualization point-clouds open3d
1个回答
0
投票

SceneWidget 的相机属性可通过

widget3d.scene.camera
获得。注意班级关系:-
SceneWidget -> Open3dScene -> Camera
.

您应该能够从

获取视图矩阵
widget3d.scene.camera.get_view_matrix()

注意 - 您应该将

_scene
重命名为
widget
,以便更容易推断对象的类。

© www.soinside.com 2019 - 2024. All rights reserved.