1
0
mirror of https://github.com/tumic0/GPXSee.git synced 2025-01-18 11:52:08 +01:00

Only do the units conversion on specific point types

This commit is contained in:
Martin Tůma 2025-01-04 17:40:15 +01:00
parent c678866c22
commit b3fd46a225
3 changed files with 6 additions and 3 deletions

View File

@ -150,7 +150,7 @@ Label LBLFile::str2label(const QVector<quint8> &str, bool capitalize,
bap->append(c); bap->append(c);
} }
if (split >= 0) { if (convert && split >= 0) {
QByteArray num(ft2m(label.mid(split), &ok)); QByteArray num(ft2m(label.mid(split), &ok));
if (ok) { if (ok) {
QByteArray name(label.left(split - 1)); QByteArray name(label.left(split - 1));
@ -208,7 +208,7 @@ Label LBLFile::label6b(const SubFile *file, Handle &fileHdl, quint32 size,
for (int cpt = 0; cpt < 4; cpt++) { for (int cpt = 0; cpt < 4; cpt++) {
if (c[cpt] > 0x2f || (charset == Normal && c[cpt] == 0x1d)) { if (c[cpt] > 0x2f || (charset == Normal && c[cpt] == 0x1d)) {
if (split >= 0) { if (convert && split >= 0) {
QByteArray num(ft2m(label.mid(split), &ok)); QByteArray num(ft2m(label.mid(split), &ok));
if (ok) { if (ok) {
QByteArray name(label.left(split - 1)); QByteArray name(label.left(split - 1));

View File

@ -516,7 +516,8 @@ bool RGNFile::pointObjects(Handle &hdl, const SubDiv *subdiv,
if (lbl && (labelPtr & 0x3FFFFF)) if (lbl && (labelPtr & 0x3FFFFF))
point.label = lbl->label(lblHdl, labelPtr & 0x3FFFFF, point.label = lbl->label(lblHdl, labelPtr & 0x3FFFFF,
labelPtr & 0x400000, !(Style::isCountry(point.type) labelPtr & 0x400000, !(Style::isCountry(point.type)
|| Style::isState(point.type)), Style::isSpot(point.type)); || Style::isState(point.type)), Style::isSpot(point.type)
|| Style::isSummit(point.type));
point.id = pointId(pos, point.type, point.label.text()); point.id = pointId(pos, point.type, point.label.text());
points->append(point); points->append(point);

View File

@ -134,6 +134,8 @@ public:
{return (type == TYPE(0x16) || type == 0x10a03);} {return (type == TYPE(0x16) || type == 0x10a03);}
static bool isSpot(quint32 type) static bool isSpot(quint32 type)
{return (type == TYPE(0x62) || type == TYPE(0x63));} {return (type == TYPE(0x62) || type == TYPE(0x63));}
static bool isSummit(quint32 type)
{return (type == 0x6616);}
static bool isMajorRoad(quint32 type) static bool isMajorRoad(quint32 type)
{return (type <= TYPE(0x04));} {return (type <= TYPE(0x04));}
static bool isCountry(quint32 type) static bool isCountry(quint32 type)