1、文字未顯示:
現象:在VTK中使用vtkTextActor或vtkActor2D類顯示文字,結果文字未顯示出來;
解決方法:在程式上方加上 VTK_MODULE_INIT( vtkRenderingFreeType )
2、編譯出現錯誤:no override found for '...'
解決方法:在程式上方加上
#include <vtkAutoInit.h>
VTK_MODULE_INIT( vtkRenderingOpenGL );
或:
VTK_MODULE_INIT( vtkRenderingOpenGL 2);
注:根據編譯時選擇的是OpenGL還是OpenGL2。
3、運作出現錯誤:vtkLookupTable [0000000A494850]:Bad table range:[1e+010,-1e+010]
原因:vtkLookupTable範圍設定錯誤,SetRange( double min, double max )參數min比max小
解決方法:正确設定SetRange(...)函數的參數
4、運作時出現錯誤:Error: no voerride found for "vtkGPUVolumeRayCastmapper"
解決方法:在main函數前加上
VTK_MODULE_INIT( vtkRenderingVolumeOpenGL );
5、運作時出現錯誤:vtkTrivialProducer (0000000009584F50): This data object does not contain the requested extent.
原因:使用vtkImageReslice,設定完後未調用Update()方法;
解決方法:pImageReslice->Update();
備注:其他類出現此錯誤同此解決方法。
6、運作時出現錯誤:vtkOpenGLTexture (0000000002540430): No scalar values found for texture input!
原因:建立vtkTextActor時,未調用SetInput()方法;或調用SetInput()方法,參數給的空字元串。這都相當于建立了一個空vtkTextActor,導緻該錯誤發生。或未調用初始化宏VTK_MODULE_INIT;
解決方法:(1)在先程式上方加上 VTK_MODULE_INIT( vtkRenderingFreeType ),依然不可以的話,進行(2);
(2)建立vtkTextActor時進行初始化,即調用SetInput()方法,且必須給出參數,哪怕是一個空格字元創。
7、運作時出現錯誤:Invalid pixel format, no OpenGL support
解決方法:不要在QVtkWidget的子類構造函數中建立需要render(渲染)的對象,在使用時進行渲染。
8、運作時警告:Warning: Link to vtkInteractionStyle for default style selection.
解決方法:在main函數前加上 VTK_MODULE_INIT( vtkInteractionStyle );
9、運作時錯誤:vtkOpenGLExtensionManager (00000232ABF21E00): Extension GL_VERSION_1_2 could not be loaded.
原因:VTK三維紋理映射類:vtkVolumeTextureMapper3D隻其支援兩種顯示卡nvidia和ATI;電腦預設的顯示卡使用的是內建顯示卡(已內建顯示卡的配置自然是不能很好的支援OPENGL)而不是獨顯。
解決方法:手動切換到獨顯。詳細的切換方法:雙顯示卡切換。
10、運作時警告:VTKOpenGLRenderer(00...00043A450):Resetting view-up since view plane normal is parallel
解決方法:暫未知。
11、運作時錯誤裡:vtkTextActor[000...26380]:Failed getting the TextRenderer instance!
解決方法:在.cpp檔案開頭加上VTK_MODULE_INIT( vtkRenderingFreeType );