ryuon
RYUON/stokes/stvis-vtk.py の改良。
DNA の結果を見るために、 bond を書くようにする。
vtk で線を書く方法を調べるのに結構手間取った。 以下、まとめ。
vtkTubeFilter で tube が作れる。
vtkTubeFilter は vtkPolyData をとる。
vtkPolyData の作り方:
1)既存の形から edge を取り出す。 (ex. vtkCubeSource を vtkExtractEdge に食わせる。)
2)データから点とその点の接続を与える、シンプルな vtkPolyData を作る。
点は vtkPoints を準備。(InsertNextPoints などで作る)。
線は vtkCellArray を準備。今は全点を繋ぐだけなので、 InsertCellPoint で全点を順番に与えるだけ。
vtkTubeFilter は default では3面で tube を作るようだ。
これを知らないで、どうして三角形が書かれるのかと、しばらく悩んだ。
vtkTubeFilter を準備した後はいつも通り、 vtkPolyDataMapper に食わせて vtkActor に渡せばよい。
絵はこんな感じ。