[vtkusers] can't consistently create valid vti file
Lawrence M. Lifshitz
Lawrence.Lifshitz at umassmed.edu
Tue Aug 4 10:13:19 EDT 2009
Hi,
I am trying to write a simple program to convert my image data into vti
format so I can view it using paraview. I've been using
http://www.vtk.org/VTK/img/file-formats.pdf
as I guide. But I keep getting an error message when I try to read in
the file I create.
ERROR:
In
/builddir/build/BUILD/ParaView-3.4.0/VTK/IO/vtkXMLStructuredDataReader.cxx,
line 326
vtkXMLImageDataReader
(0x10844640): Error reading extent 0 511 0 511 0 40 from piece 0
ERROR:
In /builddir/build/BUILD/ParaView-3.4.0/VTK/IO/vtkXMLDataReader.cxx,
line 502
vtkXMLImageDataReader
(0x10844640): Cannot read point data array "i2idata" from PointData in
piece 0. The data array in the element may be too short.
When I actually count the bytes in the file (after the "_") they seem
correct (i.e, 512*512*41*2, 2 since I'm using Int16 and raw data).
I went to the archives and found
http://www.cmake.org/pipermail/paraview/2008-June/008319.html which
discussed a
similar issue and has a link to a "valid" vti file (I don't have any
other to test with)
http://www.paraview.org/pipermail/paraview/attachments/20080611/e2bbb33b/attachment.obj
(don't know why the extension wasn't .vti).
I pulled that over and can read it fine (at least there are no error messages, I don't know what the image is supposed to look like).
Looking at that file it seems to me like there are too many bytes in the raw data, since it seems like it should be 8*4*4 = 128 * 4 bytes per point = 512.
In the archived article it makes it sound like maybe there are extra bytes of info needed (???) :
>/ To discover (for it was undocumented) that a 4 byte number of elements
/>/ should precede each record and should be a BIG ENDIAN integer regardless of
/>/ the endianness of rest of the binary data was quite a thrill (to say the
/>/ least!).
what does this mean? what is a "record"?
or maybe some type of byte alignment issue?
****** When I decided to create a small example of the problem for posting things went better. I segmented my data file (still in my data
format) to dims 47, 62, 25. I then used my conversion program to convert it to vti format. That seems to work fine! and, again, manually
counting bytes indicates that it possesses the correct amount of data.
I too am on 64 bit Linux (fedora 11), but I'm compiling 32 bit. I am using the "encoding="raw" attribute, but using Int16 data.
Thanks for any pointers to how to create these files!
Larry
/
--
Lawrence M. Lifshitz, Ph. D., Associate Professor
Biomedical Imaging Group (http://invitro.umassmed.edu)
University of Massachusetts Medical School (http://www.umassmed.edu)
Phone: (508) 856-3392 email: Lawrence.Lifshitz at umassmed.edu
Fax: (508) 856-1840 web: http://invitro.umassmed.edu/lml
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20090804/6044962a/attachment.htm>
More information about the vtkusers
mailing list