关于vtkPolyDataConnectivityFilter原始Cellid(C ++)

时间:2018-07-05 16:58:09

标签: c++ vtk

我的代码:

vtkSmartPointer<vtkDICOMImageReader> DicomImageReader = vtkSmartPointer<vtkDICOMImageReader>::New();
DicomImageReader->SetDirectoryName("E:\\offline_3Ddata\\2017042402");
DicomImageReader->Update();

vtkSmartPointer<vtkContourFilter> filter = vtkSmartPointer<vtkContourFilter>::New();
filter->SetInputConnection(DicomImageReader->GetOutputPort());
filter->SetValue(0, 9000);  
filter->Update();

vtkSmartPointer<vtkTriangleFilter> triangleFilter = vtkSmartPointer<vtkTriangleFilter>::New();
triangleFilter->SetInputConnection(filter->GetOutputPort());
triangleFilter->Update();

vtkSmartPointer<vtkPolyDataConnectivityFilter> connectivityFilter = vtkSmartPointer<vtkPolyDataConnectivityFilter>::New();  
connectivityFilter->SetInput(triangleFilter->GetOutput());  
connectivityFilter->SetExtractionModeToCellSeededRegions(); 
connectivityFilter->AddSeed(1000); 
connectivityFilter->Update(); 

triangleFilter中的这种情况有很多对象,并使用ConnectivityFilter,它将在triangleFilter中找到与CellId = 1000连接的其他单元格中的CellId = 1000。

那之后,ConnectivityFilter将具有一个对象,而ConnectivityFilter的CellId将从零开始,但是我想要原始的CellId。

如何在ConnectivityFilter中获取原始CellId? 我想删除triangleFilter中的对象。

抱歉,我的英语不好。 谢谢〜

0 个答案:

没有答案