我有一组折线:oldData。 我希望只根据"过滤器":showLine:
显示其中一些折线void myFunction(vtkSmartPointer<vtkPolyData> oldData,
std::vector<boolean> showLine) {
// "Filtered" polylines:
vtkSmartPointer<vtkPolyData> newData = vtkPolyData::New();
// .. ???
displayFunction(newData);
}
如何将showLine [i] == true的折线复制到newData?
提前感谢您的任何答案!
答案 0 :(得分:3)
首先,这是无效的:
vtkSmartPointer newData = vtkPolyData :: New();
你应该做
vtkSmartPointer newData = vtkSmartPointer :: New();
或
vtkPolyData * newData = vtkPolyData :: New();
对于你真正的问题,你需要从oldData中获取这些行:
vtkLine * line = oldData-&gt; GetCell(i); //语法可能比这更毛茸......
然后将其放入新数据中:
newData-&GT; InsertNextCell(线); //再次,语法可能比这更有点......