我有很多围绕(0.5,0.5,0.5)点的线和平面。我还有一个区域,它们很重要,它是一个立方体。线,平面有可能与这个区域相交,并在它的外部。我可以隐藏所有元素的一部分,以及不包括在我的区域中的元素的部分吗?Vtk有机会做得很简单吗?或者我需要自己做?我想写一些东西,比如SetBounds(bounds),然后所有没有包含在cube disapear中的东西。
尝试使用将clip函数设置为vtkBox的vtkClipDataSet。最后,呈现vtkClipDataSet过滤器的输出。
vtkNew<vtkBox> box;
box->SetBounds(.....); // set the bounds of interest.
vtkNew<vtkClipDataSet> clipper;
clipper->SetInputConnection(....); // set to your data producer
clipper->SetClipFunction(box.GetPointer());
// since clipper will produce an unstructured grid, apply the following to
// extract a polydata from it.
vtkNew<vtkGeometryFilter> geomFilter;
geomFilter->SetInputConnection(clipper->GetOutputPort());
// now, this can be connected to the mapper.
vtkNew<vtkPolyDataMapper> mapper;
mapper->SetInputConnection(geomFilter->GetOutputPort());