4#include <QtCore/QObject>
5#include <QtCore/QStringList>
6#include <QtGui/QVector2D>
7#include <QtGui/QVector3D>
8#include <QtPositioning/QGeoCoordinate>
27 QVector2D
bb_max = QVector2D(-1e6, -1e6);
28 QVector2D
bb_min = QVector2D(1e6, 1e6);
32 void append(
const std::vector<QGeoCoordinate> &newPoints,
bool isInner);
33 void append(
const std::vector<QVector2D> &newPoints,
bool isInner);
39 void start(
const QString &filePath);
41 const QGeoCoordinate&
gpsRefPoint()
const {
return _gpsRefPoint; }
42 const QMap<uint64_t, QGeoCoordinate>&
mapNodes()
const {
return _mapNodes; }
43 const QMap<uint64_t, BuildingType_t>&
mapBuildings()
const {
return _mapBuildings; }
52 void _parseOsmFile(
const QString &filePath);
54 QGeoCoordinate _gpsRefPoint;
55 QMap<uint64_t, QGeoCoordinate> _mapNodes;
56 QMap<uint64_t, BuildingType_t> _mapBuildings;
57 QGeoCoordinate _coordinateMin;
58 QGeoCoordinate _coordinateMax;
60 QThread *_workerThread =
nullptr;
62 const QStringList _singleStoreyBuildings = {
63 QStringLiteral(
"bungalow"),
64 QStringLiteral(
"shed"),
65 QStringLiteral(
"kiosk"),
66 QStringLiteral(
"cabin")
68 const QStringList _doubleStoreyLeisure = {
69 QStringLiteral(
"stadium"),
70 QStringLiteral(
"sports_hall"),
71 QStringLiteral(
"sauna")
74 bool _mapLoadedFlag =
false;
const QMap< uint64_t, QGeoCoordinate > & mapNodes() const
const QGeoCoordinate & coordinateMin() const
void fileParsed(bool isValid)
const QGeoCoordinate & coordinateMax() const
void start(const QString &filePath)
void startThread(const QString &filePath)
friend class OsmParserThreadTest
const QMap< uint64_t, BuildingType_t > & mapBuildings() const
const QGeoCoordinate & gpsRefPoint() const
void append(const std::vector< QGeoCoordinate > &newPoints, bool isInner)
std::vector< QVector2D > points_local_inner
std::vector< QGeoCoordinate > points_gps
std::vector< QVector2D > points_local
std::vector< QGeoCoordinate > points_gps_inner