12 : _modelName(QStringLiteral("city_map_default_name"))
14 Viewer3DSettings* viewer3DSettings = SettingsManager::instance()->viewer3DSettings();
16 _setOsmFilePath(viewer3DSettings->
osmFilePath()->rawValue());
20void CityMapGeometry::setModelName(
const QString &modelName)
22 if (_modelName == modelName) {
25 _modelName = modelName;
29void CityMapGeometry::_setOsmFilePath(
const QVariant &value)
32 _osmFilePath = value.toString();
33 qCDebug(CityMapGeometryLog) <<
"OSM file path set to:" << _osmFilePath;
40 if (_mapProvider == newMapProvider) {
51 _mapProvider = newMapProvider;
52 _osmParser = qobject_cast<OsmParser*>(_mapProvider);
65bool CityMapGeometry::_loadOsmMap()
75void CityMapGeometry::_updateViewer()
80 qCDebug(CityMapGeometryLog) <<
"updateViewer: no OSM parser set";
86 qCDebug(CityMapGeometryLog) <<
"Building mesh generated:" << _vertexData.size() <<
"bytes";
88 constexpr int stride = 3 *
sizeof(float);
89 if (!_vertexData.isEmpty()) {
90 setVertexData(_vertexData);
92 setPrimitiveType(QQuick3DGeometry::PrimitiveType::Triangles);
93 addAttribute(QQuick3DGeometry::Attribute::PositionSemantic,
95 QQuick3DGeometry::Attribute::F32Type);
101void CityMapGeometry::_clearViewer()
#define QGC_LOGGING_CATEGORY(name, categoryStr)
void osmFilePathChanged()
void mapProviderChanged()
void rawValueChanged(const QVariant &value)
void parseOsmFile(const QString &filePath)
void buildingLevelHeightChanged()
bool mapLoaded() const override
QByteArray buildingToMesh()
Fact *osmFilePath READ osmFilePath CONSTANT Fact * osmFilePath()