QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
CityMapGeometry.h
Go to the documentation of this file.
1#pragma once
2
3#include <QtCore/QLoggingCategory>
4#include <QtCore/QString>
5#include <QtCore/QVariant>
6#include <QtQmlIntegration/QtQmlIntegration>
7#include <QtQuick3D/QQuick3DGeometry>
8
9Q_DECLARE_LOGGING_CATEGORY(CityMapGeometryLog)
10
11class OsmParser;
13
14class CityMapGeometry : public QQuick3DGeometry
15{
16 Q_OBJECT
17 QML_ELEMENT
18 Q_MOC_INCLUDE("Viewer3DMapProvider.h")
19
20 friend class CityMapGeometryTest;
21
22 Q_PROPERTY(QString modelName READ modelName WRITE setModelName NOTIFY modelNameChanged)
23 Q_PROPERTY(Viewer3DMapProvider *mapProvider READ mapProvider WRITE setMapProvider NOTIFY mapProviderChanged)
24
25public:
27
28 QString modelName() const { return _modelName; }
29 void setModelName(const QString &modelName);
30
31 QString osmFilePath() const { return _osmFilePath; }
32
33 Viewer3DMapProvider *mapProvider() const { return _mapProvider; }
34 void setMapProvider(Viewer3DMapProvider *newMapProvider);
35
36signals:
40
41private:
42 void _setOsmFilePath(const QVariant &value);
43 void _updateViewer();
44 void _clearViewer();
45 bool _loadOsmMap();
46
47 Viewer3DMapProvider *_mapProvider = nullptr;
48 OsmParser *_osmParser = nullptr;
49
50 QString _modelName;
51 QString _osmFilePath;
52 QByteArray _vertexData;
53};
Q_DECLARE_LOGGING_CATEGORY(AndroidSerialLog)
void osmFilePathChanged()
friend class CityMapGeometryTest
void mapProviderChanged()
void modelNameChanged()