0

たとえば、(0.5、0.5、0.5)ポイントの周りにある線と平面がたくさんあります。また、それらが重要な領域があります。それは立方体です。そして、線や平面はこの領域と交差する可能性があり、その外側にある可能性があります。すべての要素の一部、および自分の領域に含まれていない要素の一部を非表示にすることはできますか? Vtk はそれを非常に簡単に行う機会がありますか? それとも自分でやる必要がありますか?たとえば SetBounds(bounds) と書きたいのですが、その後キューブに含まれていないものはすべて消えてしまいます。

4

1 に答える 1

0

clip-function を 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());
于 2014-09-03T01:39:40.760 に答える