Skip to content

Commit 5c64663

Browse files
author
homann
committed
Merged r6478 to trunk
git-svn-id: http://svn.osgeo.org/qgis/trunk@6480 c8812cc2-4d05-0410-92ff-de0c093fc19c
1 parent e11182b commit 5c64663

File tree

1 file changed

+13
-8
lines changed

1 file changed

+13
-8
lines changed

src/providers/gpx/gpsdata.cpp

+13-8
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
#include "gpsdata.h"
2727
#include <qgslogger.h>
2828

29+
#define OUTPUT_PRECISION 12
30+
2931
QString GPSObject::xmlify(const QString& str) {
3032
QString tmp = str;
3133
tmp.replace("&", "&amp;");
@@ -85,7 +87,8 @@ void GPSExtended::writeXML(QTextStream& stream) {
8587

8688

8789
void Waypoint::writeXML(QTextStream& stream) {
88-
stream<<"<wpt lat=\""<<lat<<"\" lon=\""<<lon<<"\">\n";
90+
stream << "<wpt lat=\"" << QString::number(lat, 'f', OUTPUT_PRECISION) <<
91+
"\" lon=\"" << QString::number(lon, 'f', OUTPUT_PRECISION) << "\">\n";
8992
GPSPoint::writeXML(stream);
9093
stream<<"</wpt>\n";
9194
}
@@ -94,9 +97,9 @@ void Waypoint::writeXML(QTextStream& stream) {
9497
void Route::writeXML(QTextStream& stream) {
9598
stream<<"<rte>\n";
9699
GPSExtended::writeXML(stream);
97-
for (int i = 0; i < points.size(); ++i) {
98-
stream<<"<rtept lat=\""<<points[i].lat
99-
<<"\" lon=\""<<points[i].lon<<"\">\n";
100+
for (unsigned int i = 0; i < points.size(); ++i) {
101+
stream<<"<rtept lat=\""<< QString::number(points[i].lat, 'f', OUTPUT_PRECISION)
102+
<<"\" lon=\"" << QString::number(points[i].lon, 'f', OUTPUT_PRECISION) <<"\">\n";
100103
points[i].writeXML(stream);
101104
stream<<"</rtept>\n";
102105
}
@@ -107,11 +110,13 @@ void Route::writeXML(QTextStream& stream) {
107110
void Track::writeXML(QTextStream& stream) {
108111
stream<<"<trk>\n";
109112
GPSExtended::writeXML(stream);
110-
for (int i = 0; i < segments.size(); ++i) {
113+
for (unsigned int i = 0; i < segments.size(); ++i) {
111114
stream<<"<trkseg>\n";
112-
for (int j = 0; j < segments[i].points.size(); ++j) {
113-
stream<<"<trkpt lat=\""<<segments[i].points[j].lat
114-
<<"\" lon=\""<<segments[i].points[j].lon<<"\">\n";
115+
for (unsigned int j = 0; j < segments[i].points.size(); ++j) {
116+
stream<<"<trkpt lat=\"" <<
117+
QString::number(segments[i].points[j].lat, 'f', OUTPUT_PRECISION) <<
118+
"\" lon=\""<< QString::number(segments[i].points[j].lon, 'f', OUTPUT_PRECISION) <<
119+
"\">\n";
115120
segments[i].points[j].writeXML(stream);
116121
stream<<"</trkpt>\n";
117122
}

0 commit comments

Comments
 (0)