我已经使用 vtk 行进立方体完成了表面渲染,现在我需要在其中进行裁剪。
我搜索并找到了如何在体积渲染输出中进行裁剪(即;使用光线转换方法)。但我需要在表面渲染输出中进行裁剪。 所以我创建了一个 vtkClipPolyData
plane->SetOrigin(0.0, 0.0, pDoc->fBounds[4]);
plane->SetNormal(1.0, -1.0, -1.0);
clipper->SetInputConnection(//marchingcubes variable here//->GetOutputPort());
clipper->SetClipFunction(plane);
clipper->SetValue(.5);
clipper->Update();
polydata = clipper->GetOutput();//vtkPolyData//
mapper->SetInput(polydata);//vtkPolyDataMapper//
actor->SetMapper(mapper);//vtkActor//
我得到了裁剪的输出。但问题是我需要创建一个 slider ,当 slider 被拖动时,裁剪应该出现在轴向 View 中来回。我的问题清楚吗?有人可以帮忙吗?
最佳答案
您可以尝试使用 vtkSliderWidget .有一个如何使用它的例子 here .在其回调中,您可以设置裁剪平面的位置。
另一种选择:您可以使用 vtkImplicitPlaneWidget2 (注意:2 是因为有一个新版本和一个旧版本 - 尽可能使用“2”版本)。
关于c++ - 在 vtk 表面渲染输出中裁剪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54824663/