mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-05-03 09:20:26 -05:00
Add the option to add vertical offset to the on-screen log
Set the default vertical offset when using the user interface
This commit is contained in:
@@ -82,6 +82,8 @@ asset.onInitialize(function ()
|
||||
sceneHelper.bindKeys(Keybindings)
|
||||
openspace.setDefaultGuiSorting()
|
||||
|
||||
openspace.setPropertyValueSingle("RenderEngine.VerticalLogOffset", 0.100000)
|
||||
|
||||
openspace.globebrowsing.loadWMSServersFromFile(
|
||||
openspace.absPath("${DATA}/globebrowsing_servers.lua")
|
||||
)
|
||||
|
||||
@@ -189,6 +189,7 @@ private:
|
||||
|
||||
properties::BoolProperty _showOverlayOnSlaves;
|
||||
properties::BoolProperty _showLog;
|
||||
properties::FloatProperty _verticalLogOffset;
|
||||
properties::BoolProperty _showVersionInfo;
|
||||
properties::BoolProperty _showCameraInfo;
|
||||
|
||||
|
||||
@@ -111,6 +111,13 @@ namespace {
|
||||
"log."
|
||||
};
|
||||
|
||||
constexpr openspace::properties::Property::PropertyInfo VerticalLogOffsetInfo = {
|
||||
"VerticalLogOffset",
|
||||
"Vertical Log Offset",
|
||||
"The vertical offset for the on-screen log in [0,1] coordinates, a factor that "
|
||||
"is scaled with the vertical resolution"
|
||||
};
|
||||
|
||||
constexpr openspace::properties::Property::PropertyInfo ShowVersionInfo = {
|
||||
"ShowVersion",
|
||||
"Shows the version on-screen information",
|
||||
@@ -253,6 +260,7 @@ RenderEngine::RenderEngine()
|
||||
, _doPerformanceMeasurements(PerformanceInfo)
|
||||
, _showOverlayOnSlaves(ShowOverlaySlavesInfo, false)
|
||||
, _showLog(ShowLogInfo, true)
|
||||
, _verticalLogOffset(VerticalLogOffsetInfo, 0.f, 0.f, 1.f)
|
||||
, _showVersionInfo(ShowVersionInfo, true)
|
||||
, _showCameraInfo(ShowCameraInfo, true)
|
||||
, _applyWarping(ApplyWarpingInfo, false)
|
||||
@@ -296,6 +304,7 @@ RenderEngine::RenderEngine()
|
||||
|
||||
addProperty(_showOverlayOnSlaves);
|
||||
addProperty(_showLog);
|
||||
addProperty(_verticalLogOffset);
|
||||
addProperty(_showVersionInfo);
|
||||
addProperty(_showCameraInfo);
|
||||
|
||||
@@ -1410,6 +1419,8 @@ void RenderEngine::renderScreenLog() {
|
||||
std::make_pair(entries.rbegin(), entries.rbegin() + MaxNumberMessages) :
|
||||
std::make_pair(entries.rbegin(), entries.rend());
|
||||
|
||||
const glm::ivec2 fontRes = fontResolution();
|
||||
|
||||
size_t nr = 1;
|
||||
const auto now = std::chrono::steady_clock::now();
|
||||
for (auto& it = lastEntries.first; it != lastEntries.second; ++it) {
|
||||
@@ -1439,7 +1450,10 @@ void RenderEngine::renderScreenLog() {
|
||||
|
||||
RenderFont(
|
||||
*_fontLog,
|
||||
glm::vec2(10.f, _fontLog->pointSize() * nr * 2),
|
||||
glm::vec2(
|
||||
10.f,
|
||||
_fontLog->pointSize() * nr * 2 + fontRes.y * _verticalLogOffset
|
||||
),
|
||||
fmt::format(
|
||||
"{:<15} {}{}",
|
||||
e->timeString,
|
||||
@@ -1470,14 +1484,20 @@ void RenderEngine::renderScreenLog() {
|
||||
|
||||
RenderFont(
|
||||
*_fontLog,
|
||||
glm::vec2(10 + 30 * _fontLog->pointSize(), _fontLog->pointSize() * nr * 2),
|
||||
glm::vec2(
|
||||
10 + 30 * _fontLog->pointSize(),
|
||||
_fontLog->pointSize() * nr * 2 + fontRes.y * _verticalLogOffset
|
||||
),
|
||||
lvl,
|
||||
color
|
||||
);
|
||||
|
||||
RenderFont(
|
||||
*_fontLog,
|
||||
glm::vec2(10 + 41 * _fontLog->pointSize(), _fontLog->pointSize() * nr * 2),
|
||||
glm::vec2(
|
||||
10 + 41 * _fontLog->pointSize(),
|
||||
_fontLog->pointSize() * nr * 2 + fontRes.y * _verticalLogOffset
|
||||
),
|
||||
message,
|
||||
white
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user