cabana: use the same double precision as the dbc file (#28234)
old-commit-hash: ac2c87246af2d73f6c0481934d8cc4969aba4b4d
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include <limits>
|
||||
#include <QList>
|
||||
#include <QMetaType>
|
||||
#include <QString>
|
||||
@@ -85,3 +86,5 @@ int bigEndianBitIndex(int index);
|
||||
void updateSigSizeParamsFromRange(cabana::Signal &s, int start_bit, int size);
|
||||
std::pair<int, int> getSignalRange(const cabana::Signal *s);
|
||||
inline std::vector<std::string> allDBCNames() { return get_dbc_names(); }
|
||||
inline QString doubleToString(double value) { return QString::number(value, 'g', std::numeric_limits<double>::digits10); }
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
#include <QFileInfo>
|
||||
#include <QRegularExpression>
|
||||
#include <QTextStream>
|
||||
#include <limits>
|
||||
#include <numeric>
|
||||
#include <sstream>
|
||||
|
||||
@@ -257,8 +256,8 @@ QString DBCFile::generateDBC() {
|
||||
.arg(sig->size)
|
||||
.arg(sig->is_little_endian ? '1' : '0')
|
||||
.arg(sig->is_signed ? '-' : '+')
|
||||
.arg(sig->factor, 0, 'g', std::numeric_limits<double>::digits10)
|
||||
.arg(sig->offset, 0, 'g', std::numeric_limits<double>::digits10)
|
||||
.arg(doubleToString(sig->factor))
|
||||
.arg(doubleToString(sig->offset))
|
||||
.arg(sig->min)
|
||||
.arg(sig->max)
|
||||
.arg(sig->unit);
|
||||
|
||||
@@ -124,8 +124,8 @@ QVariant SignalModel::data(const QModelIndex &index, int role) const {
|
||||
case Item::Sig: return item->sig_val;
|
||||
case Item::Name: return item->sig->name;
|
||||
case Item::Size: return item->sig->size;
|
||||
case Item::Offset: return QString::number(item->sig->offset, 'f', 6);
|
||||
case Item::Factor: return QString::number(item->sig->factor, 'f', 6);
|
||||
case Item::Offset: return doubleToString(item->sig->offset);
|
||||
case Item::Factor: return doubleToString(item->sig->factor);
|
||||
case Item::Unit: return item->sig->unit;
|
||||
case Item::Comment: return item->sig->comment;
|
||||
case Item::Min: return item->sig->min;
|
||||
|
||||
Reference in New Issue
Block a user