From: Mikko Rasa Date: Wed, 10 Dec 2014 18:32:47 +0000 (+0200) Subject: Fix the bounding sphere algorithm X-Git-Url: http://git.tdb.fi/?a=commitdiff_plain;h=e56a892c3f505a1969b207654bcca4bb6158e01b;p=libs%2Fmath.git Fix the bounding sphere algorithm --- diff --git a/source/geometry/boundingsphere.h b/source/geometry/boundingsphere.h index dd20d96..b27e3a1 100644 --- a/source/geometry/boundingsphere.h +++ b/source/geometry/boundingsphere.h @@ -83,8 +83,8 @@ BoundingSphere BoundingSphere::from_point_cloud(const Iter &begin, c if(d>sqdist) { d = sqrt(d); - bsphere.center += v*(1-bsphere.radius/d); - bsphere.radius += d/2; + bsphere.center += v*((T(1)-bsphere.radius/d)/T(2)); + bsphere.radius = (bsphere.radius+d)/T(2); sqdist = bsphere.radius*bsphere.radius; } }