math: Fix rounding error for 0 in Math::round (#4495)
Thus revert the previous workaround in commit b123bc4a2a
.
Fixes #3221.
This commit is contained in:
parent
78adbf4790
commit
6883325f92
2 changed files with 3 additions and 5 deletions
|
@ -135,18 +135,20 @@ double Math::rad2deg(double p_y) {
|
||||||
|
|
||||||
double Math::round(double p_val) {
|
double Math::round(double p_val) {
|
||||||
|
|
||||||
if (p_val>0) {
|
if (p_val>=0) {
|
||||||
return ::floor(p_val+0.5);
|
return ::floor(p_val+0.5);
|
||||||
} else {
|
} else {
|
||||||
p_val=-p_val;
|
p_val=-p_val;
|
||||||
return -::floor(p_val+0.5);
|
return -::floor(p_val+0.5);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
double Math::asin(double p_x) {
|
double Math::asin(double p_x) {
|
||||||
|
|
||||||
return ::asin(p_x);
|
return ::asin(p_x);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
double Math::acos(double p_x) {
|
double Math::acos(double p_x) {
|
||||||
|
|
||||||
return ::acos(p_x);
|
return ::acos(p_x);
|
||||||
|
|
|
@ -78,10 +78,6 @@ void Range::set_val(double p_val) {
|
||||||
if (p_val<shared->min)
|
if (p_val<shared->min)
|
||||||
p_val=shared->min;
|
p_val=shared->min;
|
||||||
|
|
||||||
//avoid to set -0
|
|
||||||
if (p_val == 0)
|
|
||||||
p_val = 0;
|
|
||||||
|
|
||||||
if (shared->val==p_val)
|
if (shared->val==p_val)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue