From: Eric C. <eri...@c-...> - 2008-01-07 19:42:57
|
Hi, I don't know if it's the correct mailing list but anyway. I found a strange behavior of the parser when parsing rotation axis in VRML in some cases. /Transform { rotation 0.55735 0.55735 0.55735 1.571 children [] } / Looking forward, I found that the axis for the rotation is currently initialized like this (in /Vrml97Parser.cpp line 3536/) : / x = floatValue(); y = floatValue(); z = floatValue(); angle = floatValue(); r.x(x); r.y(y); r.z(z); r.angle(angle);/ The problem is that for each call of r.x(), r.y(),r.z(), the axis is renormalized. So, I think it should be fixed using this new code : / x = floatValue(); y = floatValue(); z = floatValue(); angle = floatValue(); r.axis(vec3f(x,y,z).normalize()); r.angle(angle);/ At the same time, we save 2 normalizations! Let me know if I'am right or not and you will be able to fixe it. Regards, Eric |