2016-12-12 1 views
0

多大な努力を払って、私はカメラを仮想シーンに配置するのに使用する剛体変換と同じ方向を指すようにしました。それから私は、私のバーチャルシーンに挿入するスクリーンショットを生成するためにmayaviを使用するので、スクリーンショットとシーンがカメラの動きに合わせて正確に整列していることを明確に確認できます。私はmayaviシーンのスクリーンショットを必要とするように、私は設定することにより、mayaviウィンドウを非表示にするレンダリングをオフスクリーン作っ:オフスクリーンレンダリングを有効にすると、Mayaviビューポートがわずかに変化します

hereで説明したように)私はmayavi図を作成する前に
mlab.options.offscreen = True 

一見したところ、これはうまくいくように見えましたが、カメラの視野が少し小さくなったように、スクリーンショットが少し違っていることに気付きました。オフスクリーンレンダリングを使用しません。私はビューの設定を照会したが、私はオフスクリーンでレンダリングするときに何も変わっていないようだ。

リモートで関連する可能性のある唯一のものはthisです。最後の答えでは、ウィンドウの境界線がオフスクリーンレンダリングで何か変わるようです。これらの境界線をオフにしようとする

mlab.options.offscreen = True 
self.fig = mlab.figure(bgcolor=(1, 1, 1), fgcolor=(0, 0, 0), size=(w, h)) 
scene = self.fig.scene 
cam = scene.camera 
cam.view_angle = self.fov 
ren = scene.renderer 
win = ren._get_vtk_window() 
win.borders = False 

が、オフスクリーンレンダリングではまだ非オフスクリーンレンダリング異なっている間、私が手スクリーンショット:私は次のことを試してみました。何が起きているのか?

答えて

0

問題が見つかりました。表示可能領域のサイズを変更するツールバーです。オフスクリーンレンダリングを実行すると、ツールバー(およびウィンドウなし)はありません。

私はこのようなツールバーを無効にした場合:

scene = self.fig.scene 
scene._tool_bar.setVisible(False) 

が、私はオフスクリーンレンダリングとない同じスクリーンショットを取得します。

関連する問題