3

接続されているように見える複数の線を描く方法について、誰かが正しい方向に向けることができますか? とvtkLineその機能を見つけました。それから私は見つけましたが、これには追加、挿入、または設定機能がないようです。についても同じです。SetPoint1SetPoint2vtkPolyLinevtkPolyVertex

内部データの最後にあるポイントをプッシュして単純にレンダリングできる基本的な機能はありますか? または、そのような関数/オブジェクトがない場合、ここに行く方法は何ですか?

関連トピック: vtk はあまり好きではありません。おそらく機能が制限されている、より使いやすい視覚化ツールキットはありますか?

前もって感謝します

4

1 に答える 1

6

複数の線を描画するには、最初にすべてのポイントを含む vtkPoints クラスを作成し、次に vtkPolyData または vtkUnstructuredGrid (vtkDataSet クラス) を介して線に接続するポイントの接続情報を追加する必要があります。vtkDataSet クラスには vtkPoints が含まれます。およびこれらのポイントの接続情報)。vtkDataSet が構築されたら、通常の方法でレンダリングできます (mapper->actor->renderer...)。

例えば:

vtkPoints *pts = vtkPoints::New();
pts->InsertNextPoint(1,1,1);
...
pts->InsertNextPoint(5,5,5);

vtkPolyData *polydata = vtkPolyData::New();
polydata->Allocate();
vtkIdType connectivity[2];
connectivity[0] = 0;
connectivity[1] = 3;
polydata->InsertNextCell(VTK_LINE,2,connectivity); //Connects the first and fourth point we inserted into a line

vtkPolyDataMapper *mapper = vtkPolyDataMapper::New();
mapper->SetInput(polydata);

// And so on, need actor and renderer now

ドキュメンテーション サイトには、すべてのクラスの例がたくさんあります。ここに vtkPoints があります

vtkPoints (テスト) リンクをクリックすると、クラスに関連付けられたテストが表示されます。さまざまなサンプル コードの束を提供します。

また、vtk メーリング リストは、おそらくスタック オーバーフローよりもはるかに役立つでしょう。

于 2010-01-26T18:35:06.690 に答える