1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-02 06:04:39 -04:00

Map: Add support for latest Cesium graphics settings: MSAA, Terrain Lighting, Water effects, Fog and HDR, display FPS.

Add setting to select default imagery. Use Sentinel 2 as default to avoid hitting Bing Maps quota.
Add directional light strength setting.
Add ArcGIS API Key setting.
This commit is contained in:
srcejon
2025-06-09 10:34:41 +01:00
parent 24b1807a07
commit d26aa35969
9 changed files with 355 additions and 29 deletions
+56 -7
View File
@@ -97,7 +97,16 @@ void CesiumInterface::track(const QString& name)
send(obj);
}
void CesiumInterface::setTerrain(const QString &terrain, const QString &maptilerAPIKey)
void CesiumInterface::setDefaultImagery(const QString &imagery)
{
QJsonObject obj {
{"command", "setDefaultImagery"},
{"imagery", imagery}
};
send(obj);
}
void CesiumInterface::setTerrain(const QString &terrain, const QString &maptilerAPIKey, bool lighting, bool water)
{
QString provider;
QString url;
@@ -118,7 +127,9 @@ void CesiumInterface::setTerrain(const QString &terrain, const QString &maptiler
QJsonObject obj {
{"command", "setTerrain"},
{"provider", provider},
{"url", url}
{"url", url},
{"lighting", lighting},
{"water", water}
};
send(obj);
}
@@ -132,11 +143,12 @@ void CesiumInterface::setBuildings(const QString &buildings)
send(obj);
}
void CesiumInterface::setSunLight(bool useSunLight)
void CesiumInterface::setLighting(bool useSunLight, float cameraLightIntensity)
{
QJsonObject obj {
{"command", "setSunLight"},
{"useSunLight", useSunLight}
{"command", "setLighting"},
{"useSunLight", useSunLight},
{"cameraLightIntensity", cameraLightIntensity}
};
send(obj);
}
@@ -150,11 +162,48 @@ void CesiumInterface::setCameraReferenceFrame(bool eci)
send(obj);
}
void CesiumInterface::setAntiAliasing(const QString &antiAliasing)
void CesiumInterface::setAntiAliasing(bool fxaa, int msaa)
{
QJsonObject obj {
{"command", "setAntiAliasing"},
{"antiAliasing", antiAliasing}
{"fxaa", fxaa},
{"msaa", msaa}
};
send(obj);
}
void CesiumInterface::setHDR(bool enabled)
{
QJsonObject obj {
{"command", "setHDR"},
{"hdr", enabled}
};
send(obj);
}
void CesiumInterface::setFog(bool enabled)
{
QJsonObject obj {
{"command", "setFog"},
{"fog", enabled}
};
send(obj);
}
void CesiumInterface::showFPS(bool show)
{
QJsonObject obj {
{"command", "showFPS"},
{"show", show}
};
send(obj);
}
void CesiumInterface::showPFD(bool show)
{
QJsonObject obj {
{"command", "showPFD"},
{"show", show}
};
send(obj);
}