aboutsummaryrefslogtreecommitdiff
path: root/js/helper-classes/3D/math-utils.js
diff options
context:
space:
mode:
authorArmen Kesablyan2012-06-25 11:14:40 -0700
committerArmen Kesablyan2012-06-25 11:14:40 -0700
commit446f475c35e3d0d5d6cb6ca35346e548de6c36f9 (patch)
tree0b7e7154979754db2c0ebb7b7908c555068d515d /js/helper-classes/3D/math-utils.js
parent7867aec2620b65605180979b5049cfa154ca7dd1 (diff)
parent35aebe8d72ccfa9ea010eb79c09ecf89cc1ed44d (diff)
downloadninja-446f475c35e3d0d5d6cb6ca35346e548de6c36f9.tar.gz
Merge branch 'refs/heads/master' into binding
Conflicts: js/ninja.reel/ninja.html Signed-off-by: Armen Kesablyan <armen@motorola.com>
Diffstat (limited to 'js/helper-classes/3D/math-utils.js')
-rwxr-xr-xjs/helper-classes/3D/math-utils.js4
1 files changed, 2 insertions, 2 deletions
diff --git a/js/helper-classes/3D/math-utils.js b/js/helper-classes/3D/math-utils.js
index 35ee8112..44e2499d 100755
--- a/js/helper-classes/3D/math-utils.js
+++ b/js/helper-classes/3D/math-utils.js
@@ -333,7 +333,7 @@ var MathUtilsClass = exports.MathUtilsClass = Object.create(Object.prototype, {
333 333
334 //returns the intersection point between the two segments (null if no intersection) 334 //returns the intersection point between the two segments (null if no intersection)
335 segSegIntersection2D: { 335 segSegIntersection2D: {
336 value: function (seg0Start, seg0End, seg1Start, seg1End, epsilon) { 336 value: function (seg0Start, seg0End, seg1Start, seg1End, epsilon, mustLieInSegements) {
337 //check for parallel segments 337 //check for parallel segments
338 var denom = (seg1End[1] - seg1Start[1]) * (seg0End[0] - seg0Start[0]) - (seg1End[0] - seg1Start[0]) * (seg0End[1] - seg0Start[1]); 338 var denom = (seg1End[1] - seg1Start[1]) * (seg0End[0] - seg0Start[0]) - (seg1End[0] - seg1Start[0]) * (seg0End[1] - seg0Start[1]);
339 if (Math.abs(denom) <= epsilon) { 339 if (Math.abs(denom) <= epsilon) {
@@ -349,7 +349,7 @@ var MathUtilsClass = exports.MathUtilsClass = Object.create(Object.prototype, {
349 paramSeg1 /= denom; 349 paramSeg1 /= denom;
350 350
351 //check whether the parameters are both between 0 and 1 351 //check whether the parameters are both between 0 and 1
352 if (Math.abs(paramSeg0) > 1.0 || Math.abs(paramSeg1) > 1.0) { 352 if (mustLieInSegements && (Math.abs(paramSeg0) > 1.0 || Math.abs(paramSeg1) > 1.0)) {
353 return null; //no intersection unless the the intersection point lies on both segments 353 return null; //no intersection unless the the intersection point lies on both segments
354 } 354 }
355 355