removed normalize (btAcos has clamping) and removed assert in btAcos.
This commit is contained in:
@@ -249,7 +249,6 @@ SIMD_FORCE_INLINE btScalar btCos(btScalar x) { return cosf(x); }
|
|||||||
SIMD_FORCE_INLINE btScalar btSin(btScalar x) { return sinf(x); }
|
SIMD_FORCE_INLINE btScalar btSin(btScalar x) { return sinf(x); }
|
||||||
SIMD_FORCE_INLINE btScalar btTan(btScalar x) { return tanf(x); }
|
SIMD_FORCE_INLINE btScalar btTan(btScalar x) { return tanf(x); }
|
||||||
SIMD_FORCE_INLINE btScalar btAcos(btScalar x) {
|
SIMD_FORCE_INLINE btScalar btAcos(btScalar x) {
|
||||||
btAssert(x <= btScalar(1.));
|
|
||||||
if (x<btScalar(-1))
|
if (x<btScalar(-1))
|
||||||
x=btScalar(-1);
|
x=btScalar(-1);
|
||||||
if (x>btScalar(1))
|
if (x>btScalar(1))
|
||||||
|
|||||||
@@ -98,8 +98,6 @@ public:
|
|||||||
{
|
{
|
||||||
btQuaternion orn1 = orn0.nearest(orn1a);
|
btQuaternion orn1 = orn0.nearest(orn1a);
|
||||||
btQuaternion dorn = orn1 * orn0.inverse();
|
btQuaternion dorn = orn1 * orn0.inverse();
|
||||||
///floating point inaccuracy can lead to w component > 1..., which breaks
|
|
||||||
dorn.normalize();
|
|
||||||
angle = dorn.getAngle();
|
angle = dorn.getAngle();
|
||||||
axis = btVector3(dorn.x(),dorn.y(),dorn.z());
|
axis = btVector3(dorn.x(),dorn.y(),dorn.z());
|
||||||
axis[3] = btScalar(0.);
|
axis[3] = btScalar(0.);
|
||||||
|
|||||||
Reference in New Issue
Block a user