很高興在雪易的CSDN遇見你?,給你糖糖
歡迎大家加入雪易社區-CSDN社區云?
前言
本文分享VTK中的平面Plane表示方法,希望對各位小伙伴有所幫助!
感謝各位小伙伴的點贊+關注,小易會繼續努力分享,一起進步!
你的點贊就是我的動力(^U^)ノ~YO
目錄
前言
1. vtkFinitePlaneRepresentation
2. VTK中平面相關接口
3. 可以表示任意平面的zxFinitePlaneRepresentation
結論:
1. vtkFinitePlaneRepresentation
? ? ? ? vtkFinitePlaneRepresentation表示有限平面;由三個控制點,兩個方向線、平面和邊界組成。可以通過vtkFinitePlaneWidget控制三個點進行調整平面。
? ? ? ? 缺點:只能表示XY平面。?
2. VTK中平面相關接口
? ? ? ? VTK中主要有三個表示平面的接口,分別為vtkPlane、vtkPlaneSource、vtkFinitePlaneRepresentation。其中vtkPlane由平面的中心和方向進行設置,表示無限平面。vtkPlaneSource表示有限平面的PolyData數據,可以由Center和Normal進行設置;也可以通過Origin、Point1和Point2進行設置。vtkFinitePlaneRepresentation則是由origin和Normal定義平面的位置,由Origin、V1和V2定義平面的邊界。下圖可以幫助理解。?
3. 可以表示任意平面的zxFinitePlaneRepresentation
? ? ? ? zxFinitePlaneRepresentation優化了vtkFinitePlaneRepresentation的問題,可以表示任意平面。其中關鍵參數如下:
3.1 獲取各Actor的屬性
? ? ? ? GetV1HandleProperty&GetV2HandleProperty,獲取兩個控制點的屬性;
? ? ? ? GetSelectHandleProperty,獲取選中時控制點的屬性;
? ? ? ? GetPlaneProperty,獲取平面的屬性;
? ? ? ? GetSelectedPlaneProperty,獲取選中平面的屬性;
? ? ? ? GetNormalProperty,獲取方向屬性;
? ? ? ? GetSelectedNormalProperty,獲取選中時方向屬性;
3.2 SetTubing
? ? ? ? 平面的邊界是否需要設置為管道。
3.3 SetDrawPlane 是否需要繪制平面
3.4 設置平面參數
? ? ? ? SetOrigin,設置中心點;
? ? ? ? SetNormal,設置法向;
? ? ? ? SetV1,SetV2,設置平面的第一方向和第二方向;
結論:
? ? ? ? 熟悉VTK的源碼,可以大幅提高我們編碼質量,哈哈~~~
感謝各位小伙伴的點贊+關注,小易會繼續努力分享,一起進步!
你的贊賞是我的最最最最大的動力(^U^)ノ~YO