Fix negative radar elevations being reported as large possitive elevations #387
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Properly report negative level II elevations.
Fix was based on this note from ICD FOR RDA/RPG - Build RDA 23.0/RPG 23.0 (PDF) section 3.2.4.3.
I moved the conversion logic from
Ar2vFile::GetElevationScan
toAr2vFileImpl::IndexFile
. This mainly causes the negative elevations to be sorted before the positive ones, rather than at the end. It may take more memory to store the elevations as floats rather than uint16_t's, but there are only a few elevation records and I believe only a fewAr2vFile
objects should exist at any time. (It also decreases the number of conversions that happen, but I do not believe that is a huge deal.) I could convert the angle to a int16_t inAr2vFileImpl::IndexFile
, then to a float inAr2vFile::GetElevationScan
, but I thought that would not be worth the complexity.