VTK一般渲染流程
VTK数据类型-vtkPolyData
多边形数据集主要由顶点、多顶点、线、折线和三角形地带等单元组成。
顶点、线和多边形构成了用来表达0、1和2维几何图形的基本要素的最小集合。特别是三角形带,表达N个三角形仅需N+2个点,且大多数图形渲染三角形带速度极快。
vtk自带很多的成熟的多边形数据,包括圆柱,球体,锥体等。我们仅需设置几个属性就可以使用现成的数据创建模型并显示。以下为创建显示锥体的代码
void SimpleVtk()
{
vtkConeSource* source = vtkConeSource::New();
source->SetHeight(13);
source->SetRadius(5);
vtkPolyDataMapper* coneMapper = vtkPolyDataMapper::New();
coneMapper->SetInputConnection(source->GetOutputPort());
vtkActor* coneActor = vtkActor::New();
coneActor->SetMapper(coneMapper);
vtkRenderer* render = vtkRenderer::New();
vtkRenderWindow* renwin = vtkRenderWindow::New();
vtkRenderWindowInteractor* iren = vtkRenderWindowInteractor::New();
render->AddActor(coneActor);
render->SetBackground(0.8, 0.4, 0.4);
renwin->AddRenderer(render);
iren->SetRenderWindow(renwin);
iren->Initialize();
iren->Start();
source->Delete();
coneMapper->Delete();
coneActor->Delete();
render->Delete();
renwin->Delete();
iren->Delete();
}