From 13e214fe1849d48ef3b2e3f2ee85e1072ce13c38 Mon Sep 17 00:00:00 2001 From: Philip Eisenlohr Date: Mon, 18 Apr 2016 15:08:29 -0400 Subject: [PATCH] added support for legacy VTK format --- processing/post/vtk_addPointcloudData.py | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/processing/post/vtk_addPointcloudData.py b/processing/post/vtk_addPointcloudData.py index 58190de27..419995949 100755 --- a/processing/post/vtk_addPointcloudData.py +++ b/processing/post/vtk_addPointcloudData.py @@ -51,13 +51,22 @@ parser.set_defaults(scalar = [], if not options.vtk: parser.error('No VTK file specified.') if not os.path.exists(options.vtk): parser.error('VTK file does not exist.') -reader = vtk.vtkXMLPolyDataReader() -reader.SetFileName(options.vtk) -reader.Update() -Npoints = reader.GetNumberOfPoints() -Ncells = reader.GetNumberOfCells() -Nvertices = reader.GetNumberOfVerts() -Polydata = reader.GetOutput() +if os.path.splitext(options.vtk)[1] == '.vtp': + reader = vtk.vtkXMLPolyDataReader() + reader.SetFileName(options.vtk) + reader.Update() + Polydata = reader.GetOutput() +elif os.path.splitext(options.vtk)[1] == '.vtk': + reader = vtk.vtkGenericDataObjectReader() + reader.SetFileName(options.vtk) + reader.Update() + Polydata = reader.GetPolyDataOutput() +else: + parser.error('Unsupported VTK file type extension.') + +Npoints = Polydata.GetNumberOfPoints() +Ncells = Polydata.GetNumberOfCells() +Nvertices = Polydata.GetNumberOfVerts() if Npoints != Ncells or Npoints != Nvertices: parser.error('Number of points, cells, and vertices in VTK differ from each other.')