vtkHeaders.h
#pragma once
#include<vtkSmartPointer.h>
#include<vtkCylinderSource.h>
#include<vtkPolyDataMapper.h>
#include<vtkActor.h>
#include<vtkRenderer.h>
#include<vtkRenderWindow.h>
#include<vtkRenderWindowInteractor.h>
#include<vtkInteractorStyle.h>
#include<vtkInteractorStyleTrackballCamera.h>
main.cpp
#include "vtkHeaders.h"
#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkInteractionStyle);
VTK_MODULE_INIT(vtkRenderingFreeType);
void HelloWorld()
{
vtkSmartPointer<vtkCylinderSource> source = vtkSmartPointer<vtkCylinderSource>::New();
source->Update();
vtkSmartPointer<vtkPolyDataMapper> mapper = vtkSmartPointer<vtkPolyDataMapper>::New();
mapper->SetInputData(source->GetOutput());
vtkSmartPointer<vtkActor> actor = vtkSmartPointer<vtkActor>::New();
actor->SetMapper(mapper);
vtkSmartPointer<vtkRenderer> render = vtkSmartPointer<vtkRenderer>::New();
render->SetBackground(0.2, 0.4, 0.6);
render->AddActor(actor);
vtkSmartPointer<vtkRenderWindow> win = vtkSmartPointer<vtkRenderWindow>::New();
win->SetSize(1000, 1000);
win->AddRenderer(render);
vtkSmartPointer<vtkRenderWindowInteractor> winIter = vtkSmartPointer<vtkRenderWindowInteractor>::New();
winIter->SetRenderWindow(win);
vtkSmartPointer<vtkInteractorStyle> style = vtkSmartPointer<vtkInteractorStyleTrackballCamera>::New();
winIter->SetInteractorStyle(style);
winIter->Initialize();
winIter->Start();
}
int main(int argc, char *argv[])
{
HelloWorld();
return 0;
}
运行结果