|
@@ -239,6 +239,57 @@ test( "setLength", function() {
|
|
|
|
|
|
});
|
|
|
|
|
|
+test( "projectOnVector", function() {
|
|
|
+ var a = new THREE.Vector3( 1, 0, 0 );
|
|
|
+ var b = new THREE.Vector3();
|
|
|
+ var normal = new THREE.Vector3( 10, 0, 0 );
|
|
|
+
|
|
|
+ ok( b.copy( a ).projectOnVector( normal ).equals( new THREE.Vector3( 1, 0, 0 ) ), "Passed!" );
|
|
|
+
|
|
|
+ a.set( 0, 1, 0 );
|
|
|
+ ok( b.copy( a ).projectOnVector( normal ).equals( new THREE.Vector3( 0, 0, 0 ) ), "Passed!" );
|
|
|
+
|
|
|
+ a.set( 0, 0, -1 );
|
|
|
+ ok( b.copy( a ).projectOnVector( normal ).equals( new THREE.Vector3( 0, 0, 0 ) ), "Passed!" );
|
|
|
+
|
|
|
+ a.set( -1, 0, 0 );
|
|
|
+ ok( b.copy( a ).projectOnVector( normal ).equals( new THREE.Vector3( -1, 0, 0 ) ), "Passed!" );
|
|
|
+
|
|
|
+});
|
|
|
+
|
|
|
+test( "projectOnPlane", function() {
|
|
|
+ var a = new THREE.Vector3( 1, 0, 0 );
|
|
|
+ var b = new THREE.Vector3();
|
|
|
+ var normal = new THREE.Vector3( 1, 0, 0 );
|
|
|
+
|
|
|
+ ok( b.copy( a ).projectOnPlane( normal ).equals( new THREE.Vector3( 0, 0, 0 ) ), "Passed!" );
|
|
|
+
|
|
|
+ a.set( 0, 1, 0 );
|
|
|
+ ok( b.copy( a ).projectOnPlane( normal ).equals( new THREE.Vector3( 0, 1, 0 ) ), "Passed!" );
|
|
|
+
|
|
|
+ a.set( 0, 0, -1 );
|
|
|
+ ok( b.copy( a ).projectOnPlane( normal ).equals( new THREE.Vector3( 0, 0, -1 ) ), "Passed!" );
|
|
|
+
|
|
|
+ a.set( -1, 0, 0 );
|
|
|
+ ok( b.copy( a ).projectOnPlane( normal ).equals( new THREE.Vector3( 0, 0, 0 ) ), "Passed!" );
|
|
|
+
|
|
|
+});
|
|
|
+
|
|
|
+test( "reflect", function() {
|
|
|
+ var a = new THREE.Vector3( 1, 0, 0 );
|
|
|
+ var normal = new THREE.Vector3( 1, 0, 0 );
|
|
|
+ var b = new THREE.Vector3( 0, 0, 0 );
|
|
|
+
|
|
|
+ ok( b.copy( a ).reflect( normal ).equals( new THREE.Vector3( 1, 0, 0 ) ), "Passed!" );
|
|
|
+
|
|
|
+ a.set( 1, -1, 0 );
|
|
|
+ ok( b.copy( a ).reflect( normal ).equals( new THREE.Vector3( 1, 1, 0 ) ), "Passed!" );
|
|
|
+
|
|
|
+ a.set( 1, -1, 0 );
|
|
|
+ normal.set( 0, -1, 0 )
|
|
|
+ ok( b.copy( a ).reflect( normal ).equals( new THREE.Vector3( -1, -1, 0 ) ), "Passed!" );
|
|
|
+});
|
|
|
+
|
|
|
test( "lerp/clone", function() {
|
|
|
var a = new THREE.Vector3( x, 0, z );
|
|
|
var b = new THREE.Vector3( 0, -y, 0 );
|