vtkGenericDataArray::GetValueRange truncates large integers
The GetValueRange(ValueType*)
method just calls vtkDataArray::GetRange(double*)
and casts the result to ValueType
.
Since double
only supports 52-bits of integer precision, incorrect results are produce on 64-bit integer arrays.
A fix is here: https://gitlab.kitware.com/allisonvacanti/vtk/commits/fix_GetValueRange
However, this has issues with excessive codegen on MSVC (fatal error C1128: number of sections exceeded object file format limit: compile with /bigobj
) that will need to be addressed.