browser/devtools/tilt/test/browser_tilt_math04.js

Wed, 31 Dec 2014 06:55:46 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:55:46 +0100
changeset 1
ca08bd8f51b2
permissions
-rw-r--r--

Added tag TORBROWSER_REPLICA for changeset 6474c204b198

     1 /* Any copyright is dedicated to the Public Domain.
     2    http://creativecommons.org/publicdomain/zero/1.0/ */
     3 "use strict";
     5 function test() {
     6   let m1 = mat4.create();
     8   ok(m1, "Should have created a matrix with mat4.create().");
     9   is(m1.length, 16, "A mat4 should have 16 elements.");
    11   ok(isApproxVec(m1, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]),
    12     "When created, a mat4 should have the values default to identity.");
    14   mat4.set([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], m1);
    15   ok(isApproxVec(m1, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]),
    16     "The mat4.set() function didn't set the values correctly.");
    18   mat4.transpose(m1);
    19   ok(isApproxVec(m1, [1, 5, 9, 13, 2, 6, 10, 14, 3, 7, 11, 15, 4, 8, 12, 16]),
    20     "The mat4.transpose() function didn't set the values correctly.");
    22   mat4.identity(m1);
    23   ok(isApproxVec(m1, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]),
    24     "The mat4.identity() function didn't set the values correctly.");
    26   ok(isApprox(mat4.determinant(m1), 1),
    27     "The mat4.determinant() function didn't calculate the value correctly.");
    29   let m2 = mat4.inverse([1, 3, 1, 1, 1, 1, 2, 1, 2, 3, 4, 1, 1, 1, 1, 1]);
    30   ok(isApproxVec(m2, [
    31     -1, -3, 1, 3, 0.5, 0, 0, -0.5, 0, 1, 0, -1, 0.5, 2, -1, -0.5
    32   ]), "The mat4.inverse() function didn't calculate the values correctly.");
    34   let m3 = mat4.toRotationMat([
    35     1, 5, 9, 13, 2, 6, 10, 14, 3, 7, 11, 15, 4, 8, 12, 16]);
    36   ok(isApproxVec(m3, [
    37     1, 5, 9, 13, 2, 6, 10, 14, 3, 7, 11, 15, 0, 0, 0, 1
    38   ]), "The mat4.toRotationMat() func. didn't calculate the values correctly.");
    40   let m4 = mat4.toMat3([
    41     1, 5, 9, 13, 2, 6, 10, 14, 3, 7, 11, 15, 4, 8, 12, 16]);
    42   ok(isApproxVec(m4, [1, 5, 9, 2, 6, 10, 3, 7, 11]),
    43     "The mat4.toMat3() function didn't set the values correctly.");
    45   let m5 = mat4.toInverseMat3([
    46     1, 3, 1, 1, 1, 1, 2, 1, 2, 3, 4, 1, 1, 1, 1, 1]);
    47   ok(isApproxVec(m5, [2, 9, -5, 0, -2, 1, -1, -3, 2]),
    48     "The mat4.toInverseMat3() function didn't set the values correctly.");
    49 }

mercurial