在vtk表面中剪切渲染输出

问题描述 投票:1回答:1

我使用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//

我得到了剪辑输出。但问题是我需要创建一个滑块,并且当拖动滑块时,剪辑应该在轴向视图中来回显示。我的问题清楚了吗?有人可以帮忙吗?

c++ visual-studio-2008 vtk
1个回答
0
投票

您可以尝试使用vtkSliderWidget。有一个如何使用它的例子here。在回调中,您可以设置剪裁平面的位置。

另一种选择:你可以使用vtkImplicitPlaneWidget2(注意:2是因为有新版本和旧版本 - 尽可能使用'2'版本)。

© www.soinside.com 2019 - 2024. All rights reserved.