[Paraview] Re: Request for reader format (x,y,x)
    Jed Frechette 
    jedfrechette at gmail.com
       
    Wed Jan 23 12:21:37 EST 2008
    
    
  
On Tue, 22 Jan 2008 16:03:00 -0600, Jim Dow wrote:
> I am looking for a Paraview reader that will read a LIDAR point  
> cloud in
> (x,y,z) coordinates as a space or comma separated .txt file.
>
> Does anyone know of such a reader?
I use the standalone Python script given below to convert unsorted xyz  
point clouds to VTK data files, then load those in Paraview. I haven't  
bothered trying to implement this directly in Paraview but I can't  
imagine it would be to difficult.
Best,
--
Jed Frechette
University of New Mexico Lidar Lab
www.unm.edu/~lidar
#!/usr/bin/env python
"""Convert a csv file containing particles to a VTK XML PolyData file.
The format of the comma separated file is: x, y, z, scalar. Additional
columns will be ignored as will missing scalars.
The results are saved to an output file with the same base name as the  
input
file and the extension vtp."""
__author__ = "Jed Frechette <jdfrech at unm.edu>"
__date__ = "27 September 2007"
__version__ = "0.1"
__license__ = "BSD <http://opensource.org/licenses/bsd-license.php>"
from glob import glob
from optparse import OptionParser
from os import name, path
from vtk import vtkParticleReader, vtkXMLPolyDataWriter
def get_filenames():
     """Return a list of filenames to process."""
     parser = OptionParser(usage='%prog INPUT_FILES',
                           description=' '.join(__doc__.split()),
                           version=__version__)
     (opts, args) = parser.parse_args()
     if name == 'nt':
         args = glob(args[0])
     return args
if __name__ == '__main__':
     for in_filename in get_filenames:
         out_filename = '.'.join([path.splitext(path.split(in_filename) 
[-1])[0],
                                 'vtp'])
         reader = vtkParticleReader()
         reader.SetFileName(in_filename)
         writer = vtkXMLPolyDataWriter()
         writer.SetFileName(out_filename)
         writer.SetInputConnection(reader.GetOutputPort())
         writer.Write()
         print "Saved file: %s" % out_filename
    
    
More information about the ParaView
mailing list