簡體   English   中英

Mayavi 查看當前相機設置

[英]Mayavi view current camera settings

我希望能夠將我的 mayavi plot 的視圖設置為我在交互式 window 中設置的視圖。 可以使用mlab.view界面設置視圖。 但是,我似乎無法從 mayavi 交互式 GUI 中找到視圖參數。

在 matplotlib 中以交互模式查看matplotlib時,相機角度和方位角顯示在屏幕底部,如下所示:

在此處輸入圖像描述

這很方便,因為要復制我喜歡的視圖,我可以讀取仰角和方位角並將它們設置在我的代碼中(在本例中為ax.view_init(elev=-9, azim=84) 。我想在mayavi中做同樣的事情給定這個代碼示例:

from mayavi import mlab
import numpy as np
    
img = np.random.uniform(0, 255, size=(512, 512)).astype(np.int)

N = 10000
event_size = 2
xs = np.random.uniform(img.shape[1], size=N)
ys = np.random.uniform(img.shape[0], size=N)
ts = np.sort(np.random.uniform(1000, size=N))
ps = np.random.randint(0,2,size=N)

mlab.imshow(img, colormap='gray', extent=[0, img.shape[0], 0, img.shape[1], ts[0], ts[1]])
colors = [0 if p>0 else 240 for p in ps]
ones = np.ones(len(xs))
p3d = mlab.quiver3d(ys, xs, ts, ones, ones,
            ones, scalars=colors, mode='sphere', scale_factor=event_size)
p3d.glyph.color_mode = 'color_by_scalar'

p3d.module_manager.scalar_lut_manager.lut.table = colors
mlab.draw()
mlab.show()

此代碼應創建圖像和點雲,並將其顯示在交互式 window 中。 在 window 中的什么位置,我可以知道當前的相機參數是什么,以及如何在代碼中應用它們? 非常感謝!

我在文檔中找到的一種解決方案是在 UI 中使用mayavi記錄功能 這會將所有操作記錄到 python 可執行腳本中,該腳本將打印您放置場景的相機位置。

或者,在mayavi UI 中,可以在 UI 終端中鍵入 python 命令,因此輸入

from mayavi import mlab
print(mlab.view())

還將提供相機參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM