mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-08 12:30:20 +08:00
uNumberToStr(double): added "fixed" param (default false) to fix ros param double/int conversion issue.
This commit is contained in:
@@ -524,9 +524,9 @@ bool exportGPS(
|
||||
for(std::map<int, GPS>::const_iterator iter=gpsValues.begin(); iter!=gpsValues.end(); ++iter)
|
||||
{
|
||||
values += uFormat("%s,%s,%s ",
|
||||
uReplaceChar(uNumber2Str(iter->second.longitude(), 8), ',', '.').c_str(),
|
||||
uReplaceChar(uNumber2Str(iter->second.latitude(), 8), ',', '.').c_str(),
|
||||
uReplaceChar(uNumber2Str(iter->second.altitude(), 8), ',', '.').c_str());
|
||||
uReplaceChar(uNumber2Str(iter->second.longitude(), 8, true), ',', '.').c_str(),
|
||||
uReplaceChar(uNumber2Str(iter->second.latitude(), 8, true), ',', '.').c_str(),
|
||||
uReplaceChar(uNumber2Str(iter->second.altitude(), 8, true), ',', '.').c_str());
|
||||
}
|
||||
|
||||
// switch argb (Qt format) -> abgr
|
||||
|
||||
@@ -109,13 +109,13 @@ std::string UTILITE_EXP uNumber2Str(int number);
|
||||
* @param number the number to convert in a string
|
||||
* @return the string
|
||||
*/
|
||||
std::string UTILITE_EXP uNumber2Str(float number, int precision=6);
|
||||
std::string UTILITE_EXP uNumber2Str(float number, int precision=6, bool fixed = false);
|
||||
/**
|
||||
* Convert a number (double) to a string.
|
||||
* @param number the number to convert in a string
|
||||
* @return the string
|
||||
*/
|
||||
std::string UTILITE_EXP uNumber2Str(double number, int precision=6);
|
||||
std::string UTILITE_EXP uNumber2Str(double number, int precision=6, bool fixed = false);
|
||||
|
||||
/**
|
||||
* Convert a string to an integer.
|
||||
|
||||
@@ -102,17 +102,23 @@ std::string uNumber2Str(int number)
|
||||
return s.str();
|
||||
}
|
||||
|
||||
std::string uNumber2Str(float number, int precision)
|
||||
std::string uNumber2Str(float number, int precision, bool fixed)
|
||||
{
|
||||
std::stringstream s;
|
||||
s << std::setprecision(precision) << std::fixed << number;
|
||||
s << std::setprecision(precision);
|
||||
if(fixed)
|
||||
s << std::fixed;
|
||||
s << number;
|
||||
return s.str();
|
||||
}
|
||||
|
||||
std::string uNumber2Str(double number, int precision)
|
||||
std::string uNumber2Str(double number, int precision, bool fixed)
|
||||
{
|
||||
std::stringstream s;
|
||||
s << std::setprecision(precision) << std::fixed << number;
|
||||
s << std::setprecision(precision);
|
||||
if(fixed)
|
||||
s << std::fixed;
|
||||
s << number;
|
||||
return s.str();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user