#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL2)
VTK_MODULE_INIT(vtkInteractionStyle)
VTK_MODULE_INIT(vtkRenderingFreeType)
VTK_MODULE_INIT(vtkRenderingVolumeOpenGL2)
#include <vtkActor.h>
#include <vtkLookupTable.h>
#include <vtkPolyDataMapper.h>
#include <vtkProperty.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkSmartPointer.h>
#include <vtkImageToPolyDataFilter.h>
#include <vtkImageQuantizeRGBToIndex.h>
#include <vtkCamera.h>
#include <vtkPNGReader.h>
#include <vtkTriangleFilter.h>
#include <vtkAppendPolyData.h>
int main(int argc, char *argv[])
{
QString path = "D:/tmp1/4698AF6023D53AE4A616FEA9BDF581A54882A443/mask/1/肺/SHENG_0086.png";
vtkNew<vtkPNGReader> reader;
reader->SetFileName(path.toLocal8Bit().data());
vtkNew<vtkImageQuantizeRGBToIndex> quant;
quant->SetInputConnection(reader->GetOutputPort());
quant->SetNumberOfColors(32);
vtkNew<vtkImageToPolyDataFilter> i2pd;
// i2pd->SetInputConnection(quant->GetOutputPort());
// i2pd->SetLookupTable(quant->GetLookupTable());
// i2pd->SetColorModeToLUT();
i2pd->SetInputConnection(reader->GetOutputPort());
i2pd->SetOutputStyleToPolygonalize();
i2pd->SetError(0);
i2pd->DecimationOn();
i2pd->SetDecimationError(0.0);
i2pd->SetSubImageSize(25);
vtkNew<vtkTriangleFilter> tf;
tf->SetInputConnection(i2pd->GetOutputPort());
vtkNew<vtkPolyDataMapper> mapper;
// mapper->SetInputConnection(tf->GetOutputPort());
mapper->SetInputConnection(i2pd->GetOutputPort());
vtkNew<vtkActor> actor;
actor->SetMapper(mapper);
// actor->GetProperty()->SetRepresentationToPoints();//点
// actor->GetProperty()->SetRepresentationToWireframe();//线框
actor->GetProperty()->SetRepresentationToSurface();//面
vtkNew<vtkRenderer> renderer;
vtkNew<vtkRenderWindow> renderWindow;
renderWindow->AddRenderer(renderer);
vtkNew<vtkRenderWindowInteractor> interactor;
interactor->SetRenderWindow(renderWindow);
renderer->AddActor(actor);
renderWindow->SetSize(512, 512);
renderWindow->Render();
interactor->Initialize();
interactor->Start();
return EXIT_SUCCESS;
}