asmaloney/libE57Format

E57SimpleReader: Improve data setup

asmaloney opened this issue · 1 comments

Setting up data is confusing. Not only do we have the scaled integer problem, but if the user:

  • sets pointRangeScaledInteger but does not set pointRangeMinimum and pointRangeMaximum OR
  • sets intensityField but does not set intensityMinimum and intensityMaximum OR
  • sets timeStampField but not timeMinimum and timeMaximum
  • (There are probably more cases like this.)

It results in a runtime exception. Writing this setup code is very much trial-and-error and the resulting exceptions don't directly point to the problem. This is not very good UX.

We should consider adding a function (finalizeData() or something) to set things up automatically based on what's in the Data3D, its pointFields, and the Data3DPointsData_t.

Much improved by #175 and #178, so closing this issue.

If any specific issues come up they can be filed separately.