How to eliminate the error caused by converting double to uint16

7 views (last 30 days)
How to eliminate the error caused by converting double to uint16
  6 Comments
Dyuman Joshi
Dyuman Joshi on 14 Oct 2023
I see, "convert" is used generally, where as "map" is used particularly when trying to convert numbers outside the range of an integer class.
Walter Roberson
Walter Roberson on 14 Oct 2023
Consider, though, that (for example) π is within the numeric range 0 to 65535 so if you were using "convert" for in-range but "map" for out of range, you would have to use "convert" for π . uint16(pi) is of course uint16(round(pi)) which is 3 and there are a lot of other nearby values like that also get changed to 3. So even within the range 0 to 65535 the mapping is not "one to one and onto". It would not be unreasonable to argue that "convert" is possibly the wrong verb when the conversion is not bijective, that "map" might be a more appropriate verb -- but that "map" should be used throughout, not just for values outside of the range 0 to 65535.

Sign in to comment.

Answers (0)

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Products


Release

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!