13 : _modelName(QStringLiteral("city_map_default_name"))
17 _setOsmFilePath(viewer3DSettings->osmFilePath()->rawValue());
18 connect(viewer3DSettings->osmFilePath(), &
Fact::rawValueChanged,
this, &CityMapGeometry::_setOsmFilePath);
30void CityMapGeometry::_setOsmFilePath(
const QVariant &value)
33 _osmFilePath = value.toString();
34 qCDebug(CityMapGeometryLog) <<
"OSM file path set to:" << _osmFilePath;
41 if (_mapProvider == newMapProvider) {
52 _mapProvider = newMapProvider;
53 _osmParser = qobject_cast<OsmParser*>(_mapProvider);
66bool CityMapGeometry::_loadOsmMap()
76void CityMapGeometry::_updateViewer()
81 qCDebug(CityMapGeometryLog) <<
"updateViewer: no OSM parser set";
87 qCDebug(CityMapGeometryLog) <<
"Building mesh generated:" << _vertexData.size() <<
"bytes";
89 constexpr int stride = 3 *
sizeof(float);
90 if (!_vertexData.isEmpty()) {
91 setVertexData(_vertexData);
93 setPrimitiveType(QQuick3DGeometry::PrimitiveType::Triangles);
94 addAttribute(QQuick3DGeometry::Attribute::PositionSemantic,
96 QQuick3DGeometry::Attribute::F32Type);
102void CityMapGeometry::_clearViewer()
#define QGC_LOGGING_CATEGORY(name, categoryStr)
void osmFilePathChanged()
QString modelName() const
void mapProviderChanged()
void setMapProvider(Viewer3DMapProvider *newMapProvider)
void setModelName(const QString &modelName)
void rawValueChanged(const QVariant &value)
void parseOsmFile(const QString &filePath)
void buildingLevelHeightChanged()
bool mapLoaded() const override
QByteArray buildingToMesh()
Viewer3DSettings * viewer3DSettings() const
static SettingsManager * instance()