2017-01-28 3 views
0

Paraviewは、VTKライブラリに基づくビジュアライゼーションアプリケーションです。私はParaviewでそれを視覚化し、色と不透明度の伝達関数を設定できるボリューム(vti形式)を持っています。 vtkImageDataとしてVTKにロードし、Paraviewと同じ色と転送関数の設定を使用してレンダリングすることもできますが、同じ結果を得ることはできません。ボリュームの のParaviewレンダリング:同じ設定を使用してボリュームの Paraview visualisationVTKおよびパラビューボリュームレンダリング

VTKレンダリング: VTK visualisation

のParaviewの設定: enter image description here

VTKでスニペット設定する:

vtkSmartPointer<vtkPiecewiseFunction> compositeOpacity = 
vtkSmartPointer<vtkPiecewiseFunction>::New(); 
compositeOpacity->AddPoint(0.0,0.0); 
compositeOpacity->AddPoint(255,1.0); 

vtkSmartPointer<vtkColorTransferFunction> color = 
     vtkSmartPointer<vtkColorTransferFunction>::New(); 
color->AddRGBPoint(0.0 , 0.231373, 0.298039, 0.752941); 
color->AddRGBPoint(18.62, 0.865, 0.865, 0.865); 
color->AddRGBPoint(61.52, 0.9647, 0.639, 0.518); 
color->AddRGBPoint(249, 0.705882, 0.01568, 0.14902); 

vtkSmartPointer<vtkVolumeProperty> volumeProperty = 
     vtkSmartPointer<vtkVolumeProperty>::New(); 
volumeProperty->SetScalarOpacity(compositeOpacity); // composite first. 
volumeProperty->SetColor(color); 

// Visualize 
vtkSmartPointer<vtkSmartVolumeMapper> mapper = 
     vtkSmartPointer<vtkSmartVolumeMapper>::New(); 
mapper->SetInputData(imageData); 
mapper->SetRequestedRenderModeToDefault(); 

VTKで同じレンダリングを行うにはどうすればよいですか?

+0

上側の不透明度を1.0からもっと小さい値(たとえば0.2)に変更すると、VTKからのレンダリングがParaViewのものに近づきますか? –

答えて

0

Paraviewで不透明度マッピングを無効にする必要があると思います。

希望しました!

+0

申し訳ありませんが、私は実際にParaviewと同じものを表示するためにVTKが必要です。ありがとうございました。 –