VTK读取.obj格式或.ply格式并三维显示

VTK读取.ply根式并三维显示代码如下:

#define vtkRenderingCore_AUTOINIT 2(vtkRenderingOpenGL2, vtkInteractionStyle)
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

int main()
{
	//std::string filename = "Greedy_Delaunay_knee_piece.obj";   //Greedy_Delaunay_knee_piece   bunny-5000
	//vtkSmartPointer reader =
	//	vtkSmartPointer::New();
	//reader->SetFileName(filename.c_str());
	//reader->Update();

	std::string filename = "Greedy_Delaunay_knee_piece.ply";   //Greedy_Delaunay_knee_piece   bunny-5000
	vtkSmartPointer reader =
		vtkSmartPointer::New();
	reader->SetFileName(filename.c_str());
	reader->Update();

	vtkSmartPointer mapper =
		vtkSmartPointer::New();
	mapper->SetInputConnection(reader->GetOutputPort());

	vtkSmartPointer actor =
		vtkSmartPointer::New();
	actor->SetMapper(mapper);

	vtkSmartPointer renderer =
		vtkSmartPointer::New();
	renderer->AddActor(actor);
	renderer->SetBackground(.3, .6, .3);

	vtkSmartPointer renderWindow =
		vtkSmartPointer::New();
	renderWindow->AddRenderer(renderer);

	vtkSmartPointer renderWindowInteractor =
		vtkSmartPointer::New();
	renderWindowInteractor->SetRenderWindow(renderWindow);
	renderWindow->Render();
	renderWindowInteractor->Start();

	return 0;
}

VTK读取.obj根式并三维显示代码如下:

#define vtkRenderingCore_AUTOINIT 2(vtkRenderingOpenGL2, vtkInteractionStyle)
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

int main()
{
	std::string filename = "Greedy_Delaunay_knee_piece.obj";   //Greedy_Delaunay_knee_piece   bunny-5000
	vtkSmartPointer reader =
		vtkSmartPointer::New();
	reader->SetFileName(filename.c_str());
	reader->Update();

	//std::string filename = "Greedy_Delaunay_knee_piece.ply";   //Greedy_Delaunay_knee_piece   bunny-5000
	//vtkSmartPointer reader =
	//	vtkSmartPointer::New();
	//reader->SetFileName(filename.c_str());
	//reader->Update();

	vtkSmartPointer mapper =
		vtkSmartPointer::New();
	mapper->SetInputConnection(reader->GetOutputPort());

	vtkSmartPointer actor =
		vtkSmartPointer::New();
	actor->SetMapper(mapper);

	vtkSmartPointer renderer =
		vtkSmartPointer::New();
	renderer->AddActor(actor);
	renderer->SetBackground(.3, .6, .3);

	vtkSmartPointer renderWindow =
		vtkSmartPointer::New();
	renderWindow->AddRenderer(renderer);

	vtkSmartPointer renderWindowInteractor =
		vtkSmartPointer::New();
	renderWindowInteractor->SetRenderWindow(renderWindow);
	renderWindow->Render();
	renderWindowInteractor->Start();

	return 0;
}

参考博文:

1、VTK:读取obj文件,使用vtkMassProperties计算obj三维模型的体积和面积;

你可能感兴趣的:(VTK_9.0.0,c++,vtk)