Hi Matthias,
I second Robert's opinion. Passing a zero-length vector simply causes in
invalid results to be calculated.
My vote would be towards using an assert, so the user is noticed in
debug builds about the potentially wrong results.
Thats what some other libraries do to hint invalid parameters in
mathematical functions at least in checked/debug builds..
Cheers
Sebastian
Hi
Our team chased down a bug where we passed an invalid rotation vector to:
void osg::Quat::makeRotate(const osg::Vec3d& from, const osg::Vec3d& to)
we passed an all zeroes Vec3d in the from parameter. This is then used
to normalize the vector, which causes INF values and lots of bad
things further down the line in our code. I know the bug is in our
code but I also see that there are divide-by-zero checks made in other
variations of makeRotate(...). The makeRotate_original even had a
warning print-out.
I guess it's to old performance vs user-friendliness problem, and
that's why I wanted to bring it up here before submitting anything.
What do you think?
/Mattias
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org