X-Git-Url: http://git.scottworley.com/nt3d/blobdiff_plain/34592f10eb3e47c8f6738aceb5ff5ea48acb089c..72eac64d07af484314745fd0e9466e0f94915684:/nt3d.js?ds=inline diff --git a/nt3d.js b/nt3d.js index 9eee504..0389946 100644 --- a/nt3d.js +++ b/nt3d.js @@ -259,7 +259,14 @@ nt3d = { point[2] + offset[2]]; }, angle_between: function(a, b) { // a and b must be unit vectors - return Math.acos(this.dot(a, b)); + var the_dot = this.dot(a, b); + if (the_dot <= -1) { + return Math.PI; + } + if (the_dot >= 1) { + return 0; + } + return Math.acos(the_dot); }, rotate_about_origin: function(points, axis, angle) { // axis must be a unit vector // From http://inside.mines.edu/~gmurray/ArbitraryAxisRotation/