VTK/Examples/ColoredPoints
From KitwarePublic
< VTK | Examples(Redirected from Write a file of a solid color triangle)
ColoredPoints.cxx
#include <vtkSmartPointer.h> #include <vtkPoints.h> #include <vtkXMLPolyDataWriter.h> #include <vtkPolyData.h> #include <vtkPointData.h> #include <vtkCellArray.h> int main(int argc, char *argv[]) { //setup points double X[3] = {1.0, 0.0, 0.0}; double Y[3] = {0.0, 0.0, 1.0}; double Z[3] = {0.0, 0.0, 0.0}; vtkSmartPointer<vtkPoints> points = vtkSmartPointer<vtkPoints>::New(); vtkSmartPointer<vtkCellArray> vertices = vtkSmartPointer<vtkCellArray>::New(); for ( unsigned int i = 0; i < 3; ++i ) { vtkIdType pid[1]; pid[0] = points->InsertNextPoint ( X[i], Y[i], Z[i] ); vertices->InsertNextCell ( 1,pid ); } //setup colors unsigned char red[3] = {255, 0, 0}; unsigned char green[3] = {0, 255, 0}; unsigned char blue[3] = {0, 0, 255}; vtkSmartPointer<vtkUnsignedCharArray> colors = vtkSmartPointer<vtkUnsignedCharArray>::New(); colors->SetNumberOfComponents ( 3 ); colors->SetName ( "Colors" ); colors->InsertNextTupleValue ( red ); colors->InsertNextTupleValue ( green ); colors->InsertNextTupleValue ( blue ); vtkSmartPointer<vtkPolyData> polydata = vtkSmartPointer<vtkPolyData>::New(); polydata->SetPoints ( points ); polydata->SetVerts ( vertices ); polydata->GetPointData()->SetVectors ( colors ); vtkSmartPointer<vtkXMLPolyDataWriter> writer = vtkSmartPointer<vtkXMLPolyDataWriter>::New(); writer->SetFileName ( "TriangleColoredPoints.vtp" ); writer->SetInput ( polydata ); writer->Write(); return 0; }
CMakeLists.txt
cmake_minimum_required(VERSION 2.6)
PROJECT(ColoredPoints)
FIND_PACKAGE(VTK REQUIRED)
INCLUDE(${VTK_USE_FILE})
ADD_EXECUTABLE(ColoredPoints ColoredPoints.cxx)
TARGET_LINK_LIBRARIES(ColoredPoints vtkHybrid)
