From 56485a9733c7eb8f85be07356be8959c5ffabbfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89milie=20Feral?= Date: Wed, 8 Jan 2020 18:13:51 +0100 Subject: [PATCH] [apps/calculation] additional_outputs; fix range of ComplexGraphView --- .../additional_outputs/complex_model.cpp | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/apps/calculation/additional_outputs/complex_model.cpp b/apps/calculation/additional_outputs/complex_model.cpp index b6ad90790..57806f140 100644 --- a/apps/calculation/additional_outputs/complex_model.cpp +++ b/apps/calculation/additional_outputs/complex_model.cpp @@ -8,28 +8,34 @@ ComplexModel::ComplexModel(std::complex c) : { } -float rangeBound(float value, float direction) { +float rangeBound(float value, float direction, bool horizontal) { if (std::isnan(value) || std::isinf(value) || value == 0.0f) { return direction; } - float factor = direction*value >= 0.0f ? 1.2f : -0.3f; + float minFactor = -0.5f; + float maxFactor = 1.2f; + if (horizontal) { + minFactor = -1.0f; + maxFactor = 2.0f; + } + float factor = direction*value >= 0.0f ? maxFactor : minFactor; return factor*value; } float ComplexModel::xMin() const { - return rangeBound(real(), -1.0f); + return rangeBound(real(), -1.0f, true); } float ComplexModel::xMax() const { - return rangeBound(real(), 1.0f); + return rangeBound(real(), 1.0f, true); } float ComplexModel::yMin() const { - return rangeBound(imag(), -1.0f); + return rangeBound(imag(), -1.0f, false); } float ComplexModel::yMax() const { - return rangeBound(imag(), 1.0f); + return rangeBound(imag(), 1.0f, false); } }