我已经使用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//
我正在获取剪切的输出。但是问题是我需要创建一个滑动条,并且拖动滑块时,剪切应在轴向视图中来回显示。我的问题清楚吗?有人可以帮忙吗?
答案 0 :(得分:0)
您可以尝试使用vtkSliderWidget。有一个如何使用它的示例here。在其回调中,可以设置剪切平面的位置。
另一种选择:您可以使用vtkImplicitPlaneWidget2(注意:存在2是因为有新的和旧的版本-尽可能使用'2'版本)。