From 1666447ea45cdb767e93e7633e84f3898443932e Mon Sep 17 00:00:00 2001 From: shyf1301 Date: Mon, 3 Sep 2018 18:29:25 +0800 Subject: [PATCH] fix bug --- src/math/Box3.js | 2 +- test/unit/src/math/Box3.tests.js | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/math/Box3.js b/src/math/Box3.js index 8784d7b2ae..1b8623412e 100644 --- a/src/math/Box3.js +++ b/src/math/Box3.js @@ -384,7 +384,7 @@ Object.assign( Box3.prototype, { } - return ( min <= plane.constant && max >= plane.constant ); + return ( min <= -plane.constant && max >= -plane.constant ); }, diff --git a/test/unit/src/math/Box3.tests.js b/test/unit/src/math/Box3.tests.js index bd8a7a41bf..ffb41b57a1 100644 --- a/test/unit/src/math/Box3.tests.js +++ b/test/unit/src/math/Box3.tests.js @@ -409,10 +409,22 @@ export default QUnit.module( 'Maths', () => { var b = new Plane( new Vector3( 0, 1, 0 ), 1 ); var c = new Plane( new Vector3( 0, 1, 0 ), 1.25 ); var d = new Plane( new Vector3( 0, - 1, 0 ), 1.25 ); - - assert.ok( a.intersectsPlane( b ), "Passed!" ); + var e = new Plane( new Vector3( 0, 1, 0 ), 0.25 ); + var f = new Plane( new Vector3( 0, 1, 0 ), -0.25 ); + var g = new Plane( new Vector3( 0, 1, 0 ), -0.75 ); + var h = new Plane( new Vector3( 0, 1, 0 ), -1 ); + var i = new Plane( new Vector3( 1, 1, 1 ).normalize(), -1.732 ); + var j = new Plane( new Vector3( 1, 1, 1 ).normalize(), -1.733 ); + + assert.ok( ! a.intersectsPlane( b ), "Passed!" ); assert.ok( ! a.intersectsPlane( c ), "Passed!" ); assert.ok( ! a.intersectsPlane( d ), "Passed!" ); + assert.ok( ! a.intersectsPlane( e ), "Passed!" ); + assert.ok( a.intersectsPlane( f ), "Passed!" ); + assert.ok( a.intersectsPlane( g ), "Passed!" ); + assert.ok( a.intersectsPlane( h ), "Passed!" ); + assert.ok( a.intersectsPlane( i ), "Passed!" ); + assert.ok( ! a.intersectsPlane( j ), "Passed!" ); } ); -- GitLab