Merge pull request #45220 from Calinou/range-ratio-equal-min-max-no-error
Make Range return 1.0 ratio if minimum and maximum values are equal
This commit is contained in:
commit
b84729f848
1 changed files with 4 additions and 1 deletions
|
@ -171,7 +171,10 @@ void Range::set_as_ratio(double p_value) {
|
||||||
}
|
}
|
||||||
|
|
||||||
double Range::get_as_ratio() const {
|
double Range::get_as_ratio() const {
|
||||||
ERR_FAIL_COND_V_MSG(Math::is_equal_approx(get_max(), get_min()), 0.0, "Cannot get ratio when minimum and maximum value are equal.");
|
if (Math::is_equal_approx(get_max(), get_min())) {
|
||||||
|
// Avoid division by zero.
|
||||||
|
return 1.0;
|
||||||
|
}
|
||||||
|
|
||||||
if (shared->exp_ratio && get_min() >= 0) {
|
if (shared->exp_ratio && get_min() >= 0) {
|
||||||
double exp_min = get_min() == 0 ? 0.0 : Math::log(get_min()) / Math::log((double)2);
|
double exp_min = get_min() == 0 ? 0.0 : Math::log(get_min()) / Math::log((double)2);
|
||||||
|
|
Loading…
Reference in a new issue