[vtk-developers] Call for Comments: Ascii representation of floats and doubles in files

Bill Lorensen bill.lorensen at gmail.com
Thu Mar 1 10:06:55 EST 2018


Folks,

I'm working on some examples to save/restore camera, polydata,
property, etc. in XML files. The files can be saved as binary or
ascii. If I save/restore the info in binary, I get the same values for
the saved info. But, to no surprise, when I save the same data in
ascii, I don't get the same values. This is because the file writing
code does not write enough significant digits.

In ITK we solved this problem many years ago. ITK uses a reduced
version of the Google double-conversion library,
https://github.com/google/double-conversion.

We added a small class to ITK that uses the library. The class,
itkNumberToString, has a simple API. To convert floating and fixed
point numbers to ascii without numerical precision erros,

For example, to convert a float,
#include "itkNumberToString.h:
itk::NumberToString<float> convert;
float a = 1.0f/3.0f;
std::cout << convert(a) << std::endl;

I propose a similar approach in VTK.

Comments please,

Bill


More information about the vtk-developers mailing list