From 6243f9a8acc669bbc66b30aa1fa4669e45c17f0a Mon Sep 17 00:00:00 2001 From: "T.Alderighi" Date: Mon, 12 Nov 2018 14:31:27 +0100 Subject: [PATCH] small bug in clampedlerp not updating the local lambda value to the clamped one + added some constness --- vcg/math/base.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/vcg/math/base.h b/vcg/math/base.h index 1f84b23e..46e3896c 100644 --- a/vcg/math/base.h +++ b/vcg/math/base.h @@ -173,7 +173,7 @@ namespace math { #endif template -inline SCALAR Clamp( const SCALAR & val, const SCALAR& minval, const SCALAR& maxval) +inline SCALAR Clamp(const SCALAR & val, const SCALAR& minval, const SCALAR& maxval) { if(val < minval) return minval; if(val > maxval) return maxval; @@ -181,16 +181,16 @@ inline SCALAR Clamp( const SCALAR & val, const SCALAR& minval, const SCALAR& ma } template -inline SCALAR Lerp(SCALAR a, SCALAR b, SCALAR lambda) +inline SCALAR Lerp(const SCALAR a, const SCALAR b, const SCALAR lambda) { return a * lambda + (1-lambda) * b; } template -inline SCALAR ClampedLerp(SCALAR a, SCALAR b, SCALAR lambda) +inline SCALAR ClampedLerp(const SCALAR a, const SCALAR b, const SCALAR lambda) { - math::Clamp(lambda, (SCALAR)0, (SCALAR)1); - return a * lambda + (1-lambda) * b; + const clampedLambda = math::Clamp(lambda, (SCALAR)0, (SCALAR)1); + return a * clampedLambda + ((SCALAR)1-clampedLambda) * b; }