VTK/Examples/Cxx/IO/WriteVTP
From KitwarePublic
In this example, we add 10 points to a polygonal data (polydata) object and write the result to a VTP file.
WriteVTP.cxx
#include <vtkVersion.h> #include <vtkCellArray.h> #include <vtkPoints.h> #include <vtkXMLPolyDataWriter.h> #include <vtkPolyData.h> #include <vtkSmartPointer.h> int main ( int, char *[] ) { // Create 10 points. vtkSmartPointer<vtkPoints> points = vtkSmartPointer<vtkPoints>::New(); for ( unsigned int i = 0; i < 10; ++i ) { points->InsertNextPoint ( i, i, i ); } // Create a polydata object and add the points to it. vtkSmartPointer<vtkPolyData> polydata = vtkSmartPointer<vtkPolyData>::New(); polydata->SetPoints(points); // Write the file vtkSmartPointer<vtkXMLPolyDataWriter> writer = vtkSmartPointer<vtkXMLPolyDataWriter>::New(); writer->SetFileName("test.vtp"); #if VTK_MAJOR_VERSION <= 5 writer->SetInput(polydata); #else writer->SetInputData(polydata); #endif // Optional - set the mode. The default is binary. //writer->SetDataModeToBinary(); //writer->SetDataModeToAscii(); writer->Write(); return EXIT_SUCCESS; }
CMakeLists.txt
cmake_minimum_required(VERSION 2.8) PROJECT(WriteVTP) find_package(VTK REQUIRED) include(${VTK_USE_FILE}) if (APPLE) add_executable(WriteVTP MACOSX_BUNDLE WriteVTP.cxx) else() add_executable(WriteVTP WriteVTP.cxx) endif() if(VTK_LIBRARIES) target_link_libraries(WriteVTP ${VTK_LIBRARIES}) else() target_link_libraries(WriteVTP vtkHybrid ) endif()