VTK基礎知識整理

最近在做的項目需要用到vtk,把一些基礎知識整理一下記錄下來,方便以後查看。

VTK的工作原理:

VTk通過數據流實現變信息爲圖形數據的。

數據流一般爲:source—filter——mapper——actor——render——renderwindow——interactor。

要理解工作原理,首先明確幾個類型:

1.vtkSource(數據源)   這個就好比一個劇本里面的角色,讓演員知道要演的是什麼人物。

 數據源有:vtkConeSource,vtkSphereSource,vtkOutlineSource...等等。

 它們都繼承與vtkPolyDataAlgorithm類,該類用於提供不同的類型的數據源

2.vtkMapper(映射器)   它就像是一個劇本,應該如何塑造角色的裝扮

 映射器有:vtkDataSetMapper,vtkMultiGroupPolyDataMapper,vtkPolyDataMapper。

 它們都繼承於vtkMapper類。所有的數據對象都要通過映射器Mapper映射到vtkActor中。

3.vtkActor(演員) 有了劇本,有了角色,得找個真人來演出這個劇本了。

 該類繼承於vtkProp3D,有4個子類:vtkFollow,vtkLODActor,vtkMesaActor,vtkOpenGLActor.

4.vtkRenderer(渲染器)   這個過程就相當於對演員進行化妝並佈置場景;

 該類繼承於vtkViewport,有2個子類:vtkMesaRender,vtkOpenGLRender.

 該類另外一個作用是設置窗口vtkRenderWindow的背景.

5.vtkRenderWindow(窗口)    這個就相當於個舞臺 ,把準備好的演員放進去,準備表演了;

 該類繼承於vtkWindow,有2個子類:vtkMesaWindow,vtkOpenGLWindow.

6.vtkRenderWindowInteractor(窗口交互器)    這個像攝像機,用於捕捉演員的動作,然後傳給導演看

 該類的繼承關係在vtkRenderWindowInteractor文章中已給出。

7.vtkInteractorObserver(觀察者)        有點導演的意思,導演通過觀看錄像後,做出一系列調整

 該類的繼承關係在vtkRenderWindowInteractor文章中已給出

 

源Source對象:通過讀取文件或重構數據對象產生數據。
過濾器Filter:將輸入數據處理後生成新的數據,其中輸入或輸出數據可以單個,或多個Source object
繪圖器Mapper:位於圖形模型中,將數據轉成圖形數據(可由圖形引擎渲染)
Writer:是一種Mapper,可以將數據寫入文件或輸出流中。


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