2017-09-21 4 views
0

は、これは私が現在持っているものです。vtkPolyDataをvtkDijkstraGraphGeodesicPathに渡す方法は?

vtkSmartPointer<vtkPolyData> polydata = vtkSmartPointer<vtkPolyData>::New(); 
polydata->SetPoints(path); 
polydata->Modified(); 

vtkSmartPointer<vtkDijkstraGraphGeodesicPath> dijkstra = 
    vtkSmartPointer<vtkDijkstraGraphGeodesicPath>::New(); 
dijkstra->SetInputData(polydata); 
dijkstra->SetStartVertex(0); 
dijkstra->SetEndVertex(1); 
dijkstra->Update(); 

しかし、毎回それはそれはvector subscript out of rangeを返し、Update()を実行します。これをどうすれば解決できますか? vtkDijkstraGraphGeodesicPathドキュメントから

答えて

0

:入力polydata警告

が入力としてポリゴンメッシュを取り...

...

は三角形の細胞を持っている必要があります。

私の推測では、あなたのポリデータが必要な前提条件を満たしていないということで、適切な三角形メッシュちょうどポイント・セットではありません。

頂点間の接続を指定するには、少なくともvtkPolyData::SetLines()の呼び出しが必要です。

関連する問題