-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Large 64bit integers are corrupted #28
Comments
This is a well-known problem with NO SOLUTION in the current implementation of PlotJuggler. |
note that the limiting factor is QWT itself, which supports only doubles. Solving this issue would be incredibly complex |
Thanks for the info. Yes, you are right. It seems that PlotJuggler uses doubles everywhere.
|
Potentially a better solution (long term, not planning to do it) is to modify the way internal storage is done to use Any type everywhere and cast the value accordingly. The QWT visualization will still be wrong, but at least the number on the 2nd column of the left panel would be correct. But this would be a massive refactoring that I am not planning to do on my own. If any company wants to SPONSOR this development, please get in touch. |
The ros1_parser can't handle large 64bit integers because it converts them to double. This corrupts values larger than 1<<53.
For example a uint64 value 2343141149457253134 in the ros bag is shown as 2343141149457253376 in the PlotJuggler.
The problematic line is here:
plotjuggler-ros-plugins/plugins/ros1_parsers/ros1_parser.cpp
Line 55 in 17219af
The text was updated successfully, but these errors were encountered: