編譯pcl1.9.1中出現error: ‘class vtkDataSetMapper’ has no member named ‘ImmediateModeRenderingOff‘問題的解決方法

我在對pcl1.9.1 + vtk8.2.0 + cuda10.0進行源碼編譯的過程中出現如下的兩個錯誤:

pcl_1.9.1/apps/modeler/src/surface_actor_item.cpp:87:11: error: ‘class vtkDataSetMapper’ has no member named ‘ImmediateModeRenderingOff’
   mapper->ImmediateModeRenderingOff ();

pcl_1.9.1/apps/modeler/src/points_actor_item.cpp:90:11: error: ‘class vtkDataSetMapper’ has no member named ‘ImmediateModeRenderingOff’
   mapper->ImmediateModeRenderingOff();

經過一番搜索之後,發現是因爲vtk8.10之後的版本中將vtkMapper的ImmediateModeRenderingOff()方法移除了,所以爲了讓pcl1.9.1代碼編譯通過,只需要將錯誤提示中對應的那一行代碼註釋掉即可,或者更換爲更低版本的vtk也行。我是通過註釋掉上述出錯的兩行代碼,因爲ImmediateModeRenderingOff()方法不是必須的操作,最後通過了編譯。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章