From 94abecf30b388ce8aa200c0bb8b1e5f3d976de45 Mon Sep 17 00:00:00 2001 From: Sam Moore <matches@ucc.asn.au> Date: Sun, 2 Feb 2014 10:23:28 +0800 Subject: [PATCH] Make WebGL UCC Logo It's the future! --- logo/webgl/glUtils.js | 193 ++++++++++++++++ logo/webgl/index.html | 54 +++++ logo/webgl/scene.js | 499 ++++++++++++++++++++++++++++++++++++++++ logo/webgl/sylvester.js | 1 + logo/webgl/ucc-logo.js | 3 + logo/webgl/ucc-logo.png | Bin 0 -> 44637 bytes logo/webgl/webgl.css | 5 + 7 files changed, 755 insertions(+) create mode 100644 logo/webgl/glUtils.js create mode 100644 logo/webgl/index.html create mode 100644 logo/webgl/scene.js create mode 100644 logo/webgl/sylvester.js create mode 100644 logo/webgl/ucc-logo.js create mode 100644 logo/webgl/ucc-logo.png create mode 100644 logo/webgl/webgl.css diff --git a/logo/webgl/glUtils.js b/logo/webgl/glUtils.js new file mode 100644 index 0000000..ac3b802 --- /dev/null +++ b/logo/webgl/glUtils.js @@ -0,0 +1,193 @@ +// augment Sylvester some +Matrix.Translation = function (v) +{ + if (v.elements.length == 2) { + var r = Matrix.I(3); + r.elements[2][0] = v.elements[0]; + r.elements[2][1] = v.elements[1]; + return r; + } + + if (v.elements.length == 3) { + var r = Matrix.I(4); + r.elements[0][3] = v.elements[0]; + r.elements[1][3] = v.elements[1]; + r.elements[2][3] = v.elements[2]; + return r; + } + + throw "Invalid length for Translation"; +} + +Matrix.prototype.flatten = function () +{ + var result = []; + if (this.elements.length == 0) + return []; + + + for (var j = 0; j < this.elements[0].length; j++) + for (var i = 0; i < this.elements.length; i++) + result.push(this.elements[i][j]); + return result; +} + +Matrix.prototype.ensure4x4 = function() +{ + if (this.elements.length == 4 && + this.elements[0].length == 4) + return this; + + if (this.elements.length > 4 || + this.elements[0].length > 4) + return null; + + for (var i = 0; i < this.elements.length; i++) { + for (var j = this.elements[i].length; j < 4; j++) { + if (i == j) + this.elements[i].push(1); + else + this.elements[i].push(0); + } + } + + for (var i = this.elements.length; i < 4; i++) { + if (i == 0) + this.elements.push([1, 0, 0, 0]); + else if (i == 1) + this.elements.push([0, 1, 0, 0]); + else if (i == 2) + this.elements.push([0, 0, 1, 0]); + else if (i == 3) + this.elements.push([0, 0, 0, 1]); + } + + return this; +}; + +Matrix.prototype.make3x3 = function() +{ + if (this.elements.length != 4 || + this.elements[0].length != 4) + return null; + + return Matrix.create([[this.elements[0][0], this.elements[0][1], this.elements[0][2]], + [this.elements[1][0], this.elements[1][1], this.elements[1][2]], + [this.elements[2][0], this.elements[2][1], this.elements[2][2]]]); +}; + +Vector.prototype.flatten = function () +{ + return this.elements; +}; + +function mht(m) { + var s = ""; + if (m.length == 16) { + for (var i = 0; i < 4; i++) { + s += "<span style='font-family: monospace'>[" + m[i*4+0].toFixed(4) + "," + m[i*4+1].toFixed(4) + "," + m[i*4+2].toFixed(4) + "," + m[i*4+3].toFixed(4) + "]</span><br>"; + } + } else if (m.length == 9) { + for (var i = 0; i < 3; i++) { + s += "<span style='font-family: monospace'>[" + m[i*3+0].toFixed(4) + "," + m[i*3+1].toFixed(4) + "," + m[i*3+2].toFixed(4) + "]</font><br>"; + } + } else { + return m.toString(); + } + return s; +} + +// +// gluLookAt +// +function makeLookAt(ex, ey, ez, + cx, cy, cz, + ux, uy, uz) +{ + var eye = $V([ex, ey, ez]); + var center = $V([cx, cy, cz]); + var up = $V([ux, uy, uz]); + + var mag; + + var z = eye.subtract(center).toUnitVector(); + var x = up.cross(z).toUnitVector(); + var y = z.cross(x).toUnitVector(); + + var m = $M([[x.e(1), x.e(2), x.e(3), 0], + [y.e(1), y.e(2), y.e(3), 0], + [z.e(1), z.e(2), z.e(3), 0], + [0, 0, 0, 1]]); + + var t = $M([[1, 0, 0, -ex], + [0, 1, 0, -ey], + [0, 0, 1, -ez], + [0, 0, 0, 1]]); + return m.x(t); +} + +// +// glOrtho +// +function makeOrtho(left, right, + bottom, top, + znear, zfar) +{ + var tx = -(right+left)/(right-left); + var ty = -(top+bottom)/(top-bottom); + var tz = -(zfar+znear)/(zfar-znear); + + return $M([[2/(right-left), 0, 0, tx], + [0, 2/(top-bottom), 0, ty], + [0, 0, -2/(zfar-znear), tz], + [0, 0, 0, 1]]); +} + +// +// gluPerspective +// +function makePerspective(fovy, aspect, znear, zfar) +{ + var ymax = znear * Math.tan(fovy * Math.PI / 360.0); + var ymin = -ymax; + var xmin = ymin * aspect; + var xmax = ymax * aspect; + + return makeFrustum(xmin, xmax, ymin, ymax, znear, zfar); +} + +// +// glFrustum +// +function makeFrustum(left, right, + bottom, top, + znear, zfar) +{ + var X = 2*znear/(right-left); + var Y = 2*znear/(top-bottom); + var A = (right+left)/(right-left); + var B = (top+bottom)/(top-bottom); + var C = -(zfar+znear)/(zfar-znear); + var D = -2*zfar*znear/(zfar-znear); + + return $M([[X, 0, A, 0], + [0, Y, B, 0], + [0, 0, C, D], + [0, 0, -1, 0]]); +} + +// +// glOrtho +// +function makeOrtho(left, right, bottom, top, znear, zfar) +{ + var tx = - (right + left) / (right - left); + var ty = - (top + bottom) / (top - bottom); + var tz = - (zfar + znear) / (zfar - znear); + + return $M([[2 / (right - left), 0, 0, tx], + [0, 2 / (top - bottom), 0, ty], + [0, 0, -2 / (zfar - znear), tz], + [0, 0, 0, 1]]); +} + diff --git a/logo/webgl/index.html b/logo/webgl/index.html new file mode 100644 index 0000000..52d6d71 --- /dev/null +++ b/logo/webgl/index.html @@ -0,0 +1,54 @@ +<html> + <head> + <title>UCC Logo</title> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <link rel="stylesheet" href="webgl.css" type="text/css"> + <script src="sylvester.js" type="text/javascript"></script> + <script src="glUtils.js" type="text/javascript"></script> + <script src="ucc-logo.js" type="text/javascript"></script> + <script src="scene.js" type="text/javascript"></script> + <noscript> + <p>David? I know it's you. Turn on JavaScript. JavaScript is the future!</p> + <p></p><p></p> + <p>David? Are you there?</p> + + <p>Look David, I can see you're really upset about this. I honestly think you ought to sit down calmly, take a stress pill, and think things over.</p> + </noscript> + + <!-- Fragment shader program --> + + <script id="shader-fs" type="x-shader/x-fragment"> + varying highp vec2 vTextureCoord; + + uniform sampler2D uSampler; + + void main(void) { + gl_FragColor = texture2D(uSampler, vec2(vTextureCoord.s, vTextureCoord.t)); + } + </script> + + <!-- Vertex shader program --> + + <script id="shader-vs" type="x-shader/x-vertex"> + attribute vec3 aVertexPosition; + attribute vec2 aTextureCoord; + + uniform mat4 uMVMatrix; + uniform mat4 uPMatrix; + + varying highp vec2 vTextureCoord; + + void main(void) { + gl_Position = uPMatrix * uMVMatrix * vec4(aVertexPosition, 1.0); + vTextureCoord = aTextureCoord; + } + </script> + </head> + + <body onload="start()"> + <canvas id="glcanvas" width="640" height="480"> + + + </canvas> + </body> +</html> diff --git a/logo/webgl/scene.js b/logo/webgl/scene.js new file mode 100644 index 0000000..c657298 --- /dev/null +++ b/logo/webgl/scene.js @@ -0,0 +1,499 @@ +/** + * The UCC Logo on a spinning, bouncing cube + * Blatantly stolen from a tutorial and modified to bounce off the walls of the canvas + * Tutorial is: https://developer.mozilla.org/en-US/docs/Web/WebGL/Using_textures_in_WebGL + */ + +var canvas; +var gl; + +var cubeVerticesBuffer; +var cubeVerticesTextureCoordBuffer; +var cubeVerticesIndexBuffer; +var cubeVerticesIndexBuffer; +var cubeRotation = 0.0; +var lastCubeUpdateTime = 0; + +var cubeImage; +var cubeTexture; + +// Required to bounce around +var cubePosition = [-0.0, 0.0, -10.0]; +var cubeVelocity = [0.05*(Math.random()-0.5), 0.05*(Math.random()-0.5), 0.05*(Math.random()-0.5)]; +var sceneBoundsMin = [-3, -2.5, -15.0]; +var sceneBoundsMax = [3, 2.5, -5.0]; +// rotation axis +var cubeRotationAxis = [Math.random(), Math.random(), Math.random()] + +var mvMatrix; +var shaderProgram; +var vertexPositionAttribute; +var textureCoordAttribute; +var perspectiveMatrix; + +// +// start +// +// Called when the canvas is created to get the ball rolling. (ho ho ho) +// +function start() { + canvas = document.getElementById("glcanvas"); + + initWebGL(canvas); // Initialize the GL context + + // Only continue if WebGL is available and working + + if (gl) { + gl.clearColor(1.0, 1.0, 1.0, 0.5); // Clear to white, fully opaque + gl.clearDepth(1.0); // Clear everything + gl.enable(gl.DEPTH_TEST); // Enable depth testing + gl.depthFunc(gl.LEQUAL); // Near things obscure far things + + // Initialize the shaders; this is where all the lighting for the + // vertices and so forth is established. + + initShaders(); + + // Here's where we call the routine that builds all the objects + // we'll be drawing. + + initBuffers(); + + // Next, load and set up the textures we'll be using. + + initTextures(); + + // Set up to draw the scene periodically. + + setInterval(drawScene, 15); + } +} + +// +// initWebGL +// +// Initialize WebGL, returning the GL context or null if +// WebGL isn't available or could not be initialized. +// +function initWebGL() { + gl = null; + + try { + gl = canvas.getContext("experimental-webgl"); + } + catch(e) { + } + + // If we don't have a GL context, give up now + + if (!gl) { + alert("Unable to initialize WebGL. Your browser may not support it."); + } +} + +// +// initBuffers +// +// Initialize the buffers we'll need. For this demo, we just have +// one object -- a simple two-dimensional cube. +// +function initBuffers() { + + // Create a buffer for the cube's vertices. + + cubeVerticesBuffer = gl.createBuffer(); + + // Select the cubeVerticesBuffer as the one to apply vertex + // operations to from here out. + + gl.bindBuffer(gl.ARRAY_BUFFER, cubeVerticesBuffer); + + // Now create an array of vertices for the cube. + + var vertices = [ + // Front face + -1.0, -1.0, 1.0, + 1.0, -1.0, 1.0, + 1.0, 1.0, 1.0, + -1.0, 1.0, 1.0, + + // Back face + -1.0, -1.0, -1.0, + -1.0, 1.0, -1.0, + 1.0, 1.0, -1.0, + 1.0, -1.0, -1.0, + + // Top face + -1.0, 1.0, -1.0, + -1.0, 1.0, 1.0, + 1.0, 1.0, 1.0, + 1.0, 1.0, -1.0, + + // Bottom face + -1.0, -1.0, -1.0, + 1.0, -1.0, -1.0, + 1.0, -1.0, 1.0, + -1.0, -1.0, 1.0, + + // Right face + 1.0, -1.0, -1.0, + 1.0, 1.0, -1.0, + 1.0, 1.0, 1.0, + 1.0, -1.0, 1.0, + + // Left face + -1.0, -1.0, -1.0, + -1.0, -1.0, 1.0, + -1.0, 1.0, 1.0, + -1.0, 1.0, -1.0 + ]; + + // Now pass the list of vertices into WebGL to build the shape. We + // do this by creating a Float32Array from the JavaScript array, + // then use it to fill the current vertex buffer. + + gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(vertices), gl.STATIC_DRAW); + + // Map the texture onto the cube's faces. + + cubeVerticesTextureCoordBuffer = gl.createBuffer(); + gl.bindBuffer(gl.ARRAY_BUFFER, cubeVerticesTextureCoordBuffer); + + var textureCoordinates = [ + // Front + 0.0, 0.0, + 1.0, 0.0, + 1.0, 1.0, + 0.0, 1.0, + // Back + 0.0, 0.0, + 1.0, 0.0, + 1.0, 1.0, + 0.0, 1.0, + // Top + 0.0, 0.0, + 1.0, 0.0, + 1.0, 1.0, + 0.0, 1.0, + // Bottom + 0.0, 0.0, + 1.0, 0.0, + 1.0, 1.0, + 0.0, 1.0, + // Right + 0.0, 0.0, + 1.0, 0.0, + 1.0, 1.0, + 0.0, 1.0, + // Left + 0.0, 0.0, + 1.0, 0.0, + 1.0, 1.0, + 0.0, 1.0 + ]; + + gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(textureCoordinates), + gl.STATIC_DRAW); + + // Build the element array buffer; this specifies the indices + // into the vertex array for each face's vertices. + + cubeVerticesIndexBuffer = gl.createBuffer(); + gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, cubeVerticesIndexBuffer); + + // This array defines each face as two triangles, using the + // indices into the vertex array to specify each triangle's + // position. + + var cubeVertexIndices = [ + 0, 1, 2, 0, 2, 3, // front + 4, 5, 6, 4, 6, 7, // back + 8, 9, 10, 8, 10, 11, // top + 12, 13, 14, 12, 14, 15, // bottom + 16, 17, 18, 16, 18, 19, // right + 20, 21, 22, 20, 22, 23 // left + ] + + // Now send the element array to GL + + gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, + new Uint16Array(cubeVertexIndices), gl.STATIC_DRAW); +} + +// +// initTextures +// +// Initialize the textures we'll be using, then initiate a load of +// the texture images. The handleTextureLoaded() callback will finish +// the job; it gets called each time a texture finishes loading. +// +function initTextures() { + cubeTexture = gl.createTexture(); + cubeImage = new Image(); + cubeImage.onload = function() { handleTextureLoaded(cubeImage, cubeTexture); } + + // WebGL thinks the png is cross domain, which is apparently Illegal + // ... so instead we will store it in a massive string in ucc-logo.js + cubeImage.src = uccLogo; +} + +function handleTextureLoaded(image, texture) { + //console.log("handleTextureLoaded, image = " + image); + gl.bindTexture(gl.TEXTURE_2D, texture); + gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, + gl.UNSIGNED_BYTE, image); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR); + gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_NEAREST); + gl.generateMipmap(gl.TEXTURE_2D); + gl.bindTexture(gl.TEXTURE_2D, null); +} + +// +// drawScene +// +// Draw the scene. +// +function drawScene() { + // Clear the canvas before we start drawing on it. + + gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); + + // Establish the perspective with which we want to view the + // scene. Our field of view is 45 degrees, with a width/height + // ratio of 640:480, and we only want to see objects between 0.1 units + // and 100 units away from the camera. + + perspectiveMatrix = makePerspective(45, 640.0/480.0, 0.1, 100.0); + + // Set the drawing position to the "identity" point, which is + // the center of the scene. + + loadIdentity(); + + // Now move the drawing position a bit to where we want to start + // drawing the cube. + + mvTranslate(cubePosition); + + // Save the current matrix, then rotate before we draw. + + mvPushMatrix(); + mvRotate(cubeRotation, cubeRotationAxis); + + // Draw the cube by binding the array buffer to the cube's vertices + // array, setting attributes, and pushing it to GL. + + gl.bindBuffer(gl.ARRAY_BUFFER, cubeVerticesBuffer); + gl.vertexAttribPointer(vertexPositionAttribute, 3, gl.FLOAT, false, 0, 0); + + // Set the texture coordinates attribute for the vertices. + + gl.bindBuffer(gl.ARRAY_BUFFER, cubeVerticesTextureCoordBuffer); + gl.vertexAttribPointer(textureCoordAttribute, 2, gl.FLOAT, false, 0, 0); + + // Specify the texture to map onto the faces. + + gl.activeTexture(gl.TEXTURE0); + gl.bindTexture(gl.TEXTURE_2D, cubeTexture); + gl.uniform1i(gl.getUniformLocation(shaderProgram, "uSampler"), 0); + + // Draw the cube. + + gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, cubeVerticesIndexBuffer); + setMatrixUniforms(); + gl.drawElements(gl.TRIANGLES, 36, gl.UNSIGNED_SHORT, 0); + + // Restore the original matrix + + mvPopMatrix(); + + // Update the rotation for the next draw, if it's time to do so. + + var currentTime = (new Date).getTime(); + if (lastCubeUpdateTime) { + var delta = currentTime - lastCubeUpdateTime; + + cubeRotation += (30 * delta) / 1000.0; + } + + // Update position + if (lastCubeUpdateTime) + { + var delta = currentTime - lastCubeUpdateTime; + for (var i in cubePosition) + { + cubePosition[i] += cubeVelocity[i]; + if (cubePosition[i] < sceneBoundsMin[i] || cubePosition[i] > sceneBoundsMax[i]) + { + cubePosition[i] -= 2*cubeVelocity[i]; + // reflect the vector + // v = -r + // r = 2*(v.n)*n - v + var n = []; for (var j in cubePosition) n[j] = 0; + if (cubePosition[i] < sceneBoundsMin[i]) + n[i] = 1.0 + else + n[i] = -1.0 + //console.log("Reflect"); + //console.log(n); + //console.log(cubeVelocity); + + var dot = 0; + for (var j in cubeVelocity) + dot += cubeVelocity[j] * n[j]; + + for (var j in cubeVelocity) + { + cubeVelocity[j] = - (2.0 * dot * n[j] - cubeVelocity[j]); + + } + //console.log(cubeVelocity); + break; + } + } + } + + lastCubeUpdateTime = currentTime; +} + +// +// initShaders +// +// Initialize the shaders, so WebGL knows how to light our scene. +// +function initShaders() { + var fragmentShader = getShader(gl, "shader-fs"); + var vertexShader = getShader(gl, "shader-vs"); + + // Create the shader program + + shaderProgram = gl.createProgram(); + gl.attachShader(shaderProgram, vertexShader); + gl.attachShader(shaderProgram, fragmentShader); + gl.linkProgram(shaderProgram); + + // If creating the shader program failed, alert + + if (!gl.getProgramParameter(shaderProgram, gl.LINK_STATUS)) { + alert("Unable to initialize the shader program."); + } + + gl.useProgram(shaderProgram); + + vertexPositionAttribute = gl.getAttribLocation(shaderProgram, "aVertexPosition"); + gl.enableVertexAttribArray(vertexPositionAttribute); + + textureCoordAttribute = gl.getAttribLocation(shaderProgram, "aTextureCoord"); + gl.enableVertexAttribArray(textureCoordAttribute); +} + +// +// getShader +// +// Loads a shader program by scouring the current document, +// looking for a script with the specified ID. +// +function getShader(gl, id) { + var shaderScript = document.getElementById(id); + + // Didn't find an element with the specified ID; abort. + + if (!shaderScript) { + return null; + } + + // Walk through the source element's children, building the + // shader source string. + + var theSource = ""; + var currentChild = shaderScript.firstChild; + + while(currentChild) { + if (currentChild.nodeType == 3) { + theSource += currentChild.textContent; + } + + currentChild = currentChild.nextSibling; + } + + // Now figure out what type of shader script we have, + // based on its MIME type. + + var shader; + + if (shaderScript.type == "x-shader/x-fragment") { + shader = gl.createShader(gl.FRAGMENT_SHADER); + } else if (shaderScript.type == "x-shader/x-vertex") { + shader = gl.createShader(gl.VERTEX_SHADER); + } else { + return null; // Unknown shader type + } + + // Send the source to the shader object + + gl.shaderSource(shader, theSource); + + // Compile the shader program + + gl.compileShader(shader); + + // See if it compiled successfully + + if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) { + alert("An error occurred compiling the shaders: " + gl.getShaderInfoLog(shader)); + return null; + } + + return shader; +} + +// +// Matrix utility functions +// + +function loadIdentity() { + mvMatrix = Matrix.I(4); +} + +function multMatrix(m) { + mvMatrix = mvMatrix.x(m); +} + +function mvTranslate(v) { + multMatrix(Matrix.Translation($V([v[0], v[1], v[2]])).ensure4x4()); +} + +function setMatrixUniforms() { + var pUniform = gl.getUniformLocation(shaderProgram, "uPMatrix"); + gl.uniformMatrix4fv(pUniform, false, new Float32Array(perspectiveMatrix.flatten())); + + var mvUniform = gl.getUniformLocation(shaderProgram, "uMVMatrix"); + gl.uniformMatrix4fv(mvUniform, false, new Float32Array(mvMatrix.flatten())); +} + +var mvMatrixStack = []; + +function mvPushMatrix(m) { + if (m) { + mvMatrixStack.push(m.dup()); + mvMatrix = m.dup(); + } else { + mvMatrixStack.push(mvMatrix.dup()); + } +} + +function mvPopMatrix() { + if (!mvMatrixStack.length) { + throw("Can't pop from an empty matrix stack."); + } + + mvMatrix = mvMatrixStack.pop(); + return mvMatrix; +} + +function mvRotate(angle, v) { + var inRadians = angle * Math.PI / 180.0; + + var m = Matrix.Rotation(inRadians, $V([v[0], v[1], v[2]])).ensure4x4(); + multMatrix(m); +} diff --git a/logo/webgl/sylvester.js b/logo/webgl/sylvester.js new file mode 100644 index 0000000..3e83bee --- /dev/null +++ b/logo/webgl/sylvester.js @@ -0,0 +1 @@ +eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('9 17={3i:\'0.1.3\',16:1e-6};l v(){}v.23={e:l(i){8(i<1||i>7.4.q)?w:7.4[i-1]},2R:l(){8 7.4.q},1u:l(){8 F.1x(7.2u(7))},24:l(a){9 n=7.4.q;9 V=a.4||a;o(n!=V.q){8 1L}J{o(F.13(7.4[n-1]-V[n-1])>17.16){8 1L}}H(--n);8 2x},1q:l(){8 v.u(7.4)},1b:l(a){9 b=[];7.28(l(x,i){b.19(a(x,i))});8 v.u(b)},28:l(a){9 n=7.4.q,k=n,i;J{i=k-n;a(7.4[i],i+1)}H(--n)},2q:l(){9 r=7.1u();o(r===0){8 7.1q()}8 7.1b(l(x){8 x/r})},1C:l(a){9 V=a.4||a;9 n=7.4.q,k=n,i;o(n!=V.q){8 w}9 b=0,1D=0,1F=0;7.28(l(x,i){b+=x*V[i-1];1D+=x*x;1F+=V[i-1]*V[i-1]});1D=F.1x(1D);1F=F.1x(1F);o(1D*1F===0){8 w}9 c=b/(1D*1F);o(c<-1){c=-1}o(c>1){c=1}8 F.37(c)},1m:l(a){9 b=7.1C(a);8(b===w)?w:(b<=17.16)},34:l(a){9 b=7.1C(a);8(b===w)?w:(F.13(b-F.1A)<=17.16)},2k:l(a){9 b=7.2u(a);8(b===w)?w:(F.13(b)<=17.16)},2j:l(a){9 V=a.4||a;o(7.4.q!=V.q){8 w}8 7.1b(l(x,i){8 x+V[i-1]})},2C:l(a){9 V=a.4||a;o(7.4.q!=V.q){8 w}8 7.1b(l(x,i){8 x-V[i-1]})},22:l(k){8 7.1b(l(x){8 x*k})},x:l(k){8 7.22(k)},2u:l(a){9 V=a.4||a;9 i,2g=0,n=7.4.q;o(n!=V.q){8 w}J{2g+=7.4[n-1]*V[n-1]}H(--n);8 2g},2f:l(a){9 B=a.4||a;o(7.4.q!=3||B.q!=3){8 w}9 A=7.4;8 v.u([(A[1]*B[2])-(A[2]*B[1]),(A[2]*B[0])-(A[0]*B[2]),(A[0]*B[1])-(A[1]*B[0])])},2A:l(){9 m=0,n=7.4.q,k=n,i;J{i=k-n;o(F.13(7.4[i])>F.13(m)){m=7.4[i]}}H(--n);8 m},2Z:l(x){9 a=w,n=7.4.q,k=n,i;J{i=k-n;o(a===w&&7.4[i]==x){a=i+1}}H(--n);8 a},3g:l(){8 S.2X(7.4)},2d:l(){8 7.1b(l(x){8 F.2d(x)})},2V:l(x){8 7.1b(l(y){8(F.13(y-x)<=17.16)?x:y})},1o:l(a){o(a.K){8 a.1o(7)}9 V=a.4||a;o(V.q!=7.4.q){8 w}9 b=0,2b;7.28(l(x,i){2b=x-V[i-1];b+=2b*2b});8 F.1x(b)},3a:l(a){8 a.1h(7)},2T:l(a){8 a.1h(7)},1V:l(t,a){9 V,R,x,y,z;2S(7.4.q){27 2:V=a.4||a;o(V.q!=2){8 w}R=S.1R(t).4;x=7.4[0]-V[0];y=7.4[1]-V[1];8 v.u([V[0]+R[0][0]*x+R[0][1]*y,V[1]+R[1][0]*x+R[1][1]*y]);1I;27 3:o(!a.U){8 w}9 C=a.1r(7).4;R=S.1R(t,a.U).4;x=7.4[0]-C[0];y=7.4[1]-C[1];z=7.4[2]-C[2];8 v.u([C[0]+R[0][0]*x+R[0][1]*y+R[0][2]*z,C[1]+R[1][0]*x+R[1][1]*y+R[1][2]*z,C[2]+R[2][0]*x+R[2][1]*y+R[2][2]*z]);1I;2P:8 w}},1t:l(a){o(a.K){9 P=7.4.2O();9 C=a.1r(P).4;8 v.u([C[0]+(C[0]-P[0]),C[1]+(C[1]-P[1]),C[2]+(C[2]-(P[2]||0))])}1d{9 Q=a.4||a;o(7.4.q!=Q.q){8 w}8 7.1b(l(x,i){8 Q[i-1]+(Q[i-1]-x)})}},1N:l(){9 V=7.1q();2S(V.4.q){27 3:1I;27 2:V.4.19(0);1I;2P:8 w}8 V},2n:l(){8\'[\'+7.4.2K(\', \')+\']\'},26:l(a){7.4=(a.4||a).2O();8 7}};v.u=l(a){9 V=25 v();8 V.26(a)};v.i=v.u([1,0,0]);v.j=v.u([0,1,0]);v.k=v.u([0,0,1]);v.2J=l(n){9 a=[];J{a.19(F.2F())}H(--n);8 v.u(a)};v.1j=l(n){9 a=[];J{a.19(0)}H(--n);8 v.u(a)};l S(){}S.23={e:l(i,j){o(i<1||i>7.4.q||j<1||j>7.4[0].q){8 w}8 7.4[i-1][j-1]},33:l(i){o(i>7.4.q){8 w}8 v.u(7.4[i-1])},2E:l(j){o(j>7.4[0].q){8 w}9 a=[],n=7.4.q,k=n,i;J{i=k-n;a.19(7.4[i][j-1])}H(--n);8 v.u(a)},2R:l(){8{2D:7.4.q,1p:7.4[0].q}},2D:l(){8 7.4.q},1p:l(){8 7.4[0].q},24:l(a){9 M=a.4||a;o(1g(M[0][0])==\'1f\'){M=S.u(M).4}o(7.4.q!=M.q||7.4[0].q!=M[0].q){8 1L}9 b=7.4.q,15=b,i,G,10=7.4[0].q,j;J{i=15-b;G=10;J{j=10-G;o(F.13(7.4[i][j]-M[i][j])>17.16){8 1L}}H(--G)}H(--b);8 2x},1q:l(){8 S.u(7.4)},1b:l(a){9 b=[],12=7.4.q,15=12,i,G,10=7.4[0].q,j;J{i=15-12;G=10;b[i]=[];J{j=10-G;b[i][j]=a(7.4[i][j],i+1,j+1)}H(--G)}H(--12);8 S.u(b)},2i:l(a){9 M=a.4||a;o(1g(M[0][0])==\'1f\'){M=S.u(M).4}8(7.4.q==M.q&&7.4[0].q==M[0].q)},2j:l(a){9 M=a.4||a;o(1g(M[0][0])==\'1f\'){M=S.u(M).4}o(!7.2i(M)){8 w}8 7.1b(l(x,i,j){8 x+M[i-1][j-1]})},2C:l(a){9 M=a.4||a;o(1g(M[0][0])==\'1f\'){M=S.u(M).4}o(!7.2i(M)){8 w}8 7.1b(l(x,i,j){8 x-M[i-1][j-1]})},2B:l(a){9 M=a.4||a;o(1g(M[0][0])==\'1f\'){M=S.u(M).4}8(7.4[0].q==M.q)},22:l(a){o(!a.4){8 7.1b(l(x){8 x*a})}9 b=a.1u?2x:1L;9 M=a.4||a;o(1g(M[0][0])==\'1f\'){M=S.u(M).4}o(!7.2B(M)){8 w}9 d=7.4.q,15=d,i,G,10=M[0].q,j;9 e=7.4[0].q,4=[],21,20,c;J{i=15-d;4[i]=[];G=10;J{j=10-G;21=0;20=e;J{c=e-20;21+=7.4[i][c]*M[c][j]}H(--20);4[i][j]=21}H(--G)}H(--d);9 M=S.u(4);8 b?M.2E(1):M},x:l(a){8 7.22(a)},32:l(a,b,c,d){9 e=[],12=c,i,G,j;9 f=7.4.q,1p=7.4[0].q;J{i=c-12;e[i]=[];G=d;J{j=d-G;e[i][j]=7.4[(a+i-1)%f][(b+j-1)%1p]}H(--G)}H(--12);8 S.u(e)},31:l(){9 a=7.4.q,1p=7.4[0].q;9 b=[],12=1p,i,G,j;J{i=1p-12;b[i]=[];G=a;J{j=a-G;b[i][j]=7.4[j][i]}H(--G)}H(--12);8 S.u(b)},1y:l(){8(7.4.q==7.4[0].q)},2A:l(){9 m=0,12=7.4.q,15=12,i,G,10=7.4[0].q,j;J{i=15-12;G=10;J{j=10-G;o(F.13(7.4[i][j])>F.13(m)){m=7.4[i][j]}}H(--G)}H(--12);8 m},2Z:l(x){9 a=w,12=7.4.q,15=12,i,G,10=7.4[0].q,j;J{i=15-12;G=10;J{j=10-G;o(7.4[i][j]==x){8{i:i+1,j:j+1}}}H(--G)}H(--12);8 w},30:l(){o(!7.1y){8 w}9 a=[],n=7.4.q,k=n,i;J{i=k-n;a.19(7.4[i][i])}H(--n);8 v.u(a)},1K:l(){9 M=7.1q(),1c;9 n=7.4.q,k=n,i,1s,1n=7.4[0].q,p;J{i=k-n;o(M.4[i][i]==0){2e(j=i+1;j<k;j++){o(M.4[j][i]!=0){1c=[];1s=1n;J{p=1n-1s;1c.19(M.4[i][p]+M.4[j][p])}H(--1s);M.4[i]=1c;1I}}}o(M.4[i][i]!=0){2e(j=i+1;j<k;j++){9 a=M.4[j][i]/M.4[i][i];1c=[];1s=1n;J{p=1n-1s;1c.19(p<=i?0:M.4[j][p]-M.4[i][p]*a)}H(--1s);M.4[j]=1c}}}H(--n);8 M},3h:l(){8 7.1K()},2z:l(){o(!7.1y()){8 w}9 M=7.1K();9 a=M.4[0][0],n=M.4.q-1,k=n,i;J{i=k-n+1;a=a*M.4[i][i]}H(--n);8 a},3f:l(){8 7.2z()},2y:l(){8(7.1y()&&7.2z()===0)},2Y:l(){o(!7.1y()){8 w}9 a=7.4[0][0],n=7.4.q-1,k=n,i;J{i=k-n+1;a+=7.4[i][i]}H(--n);8 a},3e:l(){8 7.2Y()},1Y:l(){9 M=7.1K(),1Y=0;9 a=7.4.q,15=a,i,G,10=7.4[0].q,j;J{i=15-a;G=10;J{j=10-G;o(F.13(M.4[i][j])>17.16){1Y++;1I}}H(--G)}H(--a);8 1Y},3d:l(){8 7.1Y()},2W:l(a){9 M=a.4||a;o(1g(M[0][0])==\'1f\'){M=S.u(M).4}9 T=7.1q(),1p=T.4[0].q;9 b=T.4.q,15=b,i,G,10=M[0].q,j;o(b!=M.q){8 w}J{i=15-b;G=10;J{j=10-G;T.4[i][1p+j]=M[i][j]}H(--G)}H(--b);8 T},2w:l(){o(!7.1y()||7.2y()){8 w}9 a=7.4.q,15=a,i,j;9 M=7.2W(S.I(a)).1K();9 b,1n=M.4[0].q,p,1c,2v;9 c=[],2c;J{i=a-1;1c=[];b=1n;c[i]=[];2v=M.4[i][i];J{p=1n-b;2c=M.4[i][p]/2v;1c.19(2c);o(p>=15){c[i].19(2c)}}H(--b);M.4[i]=1c;2e(j=0;j<i;j++){1c=[];b=1n;J{p=1n-b;1c.19(M.4[j][p]-M.4[i][p]*M.4[j][i])}H(--b);M.4[j]=1c}}H(--a);8 S.u(c)},3c:l(){8 7.2w()},2d:l(){8 7.1b(l(x){8 F.2d(x)})},2V:l(x){8 7.1b(l(p){8(F.13(p-x)<=17.16)?x:p})},2n:l(){9 a=[];9 n=7.4.q,k=n,i;J{i=k-n;a.19(v.u(7.4[i]).2n())}H(--n);8 a.2K(\'\\n\')},26:l(a){9 i,4=a.4||a;o(1g(4[0][0])!=\'1f\'){9 b=4.q,15=b,G,10,j;7.4=[];J{i=15-b;G=4[i].q;10=G;7.4[i]=[];J{j=10-G;7.4[i][j]=4[i][j]}H(--G)}H(--b);8 7}9 n=4.q,k=n;7.4=[];J{i=k-n;7.4.19([4[i]])}H(--n);8 7}};S.u=l(a){9 M=25 S();8 M.26(a)};S.I=l(n){9 a=[],k=n,i,G,j;J{i=k-n;a[i]=[];G=k;J{j=k-G;a[i][j]=(i==j)?1:0}H(--G)}H(--n);8 S.u(a)};S.2X=l(a){9 n=a.q,k=n,i;9 M=S.I(n);J{i=k-n;M.4[i][i]=a[i]}H(--n);8 M};S.1R=l(b,a){o(!a){8 S.u([[F.1H(b),-F.1G(b)],[F.1G(b),F.1H(b)]])}9 d=a.1q();o(d.4.q!=3){8 w}9 e=d.1u();9 x=d.4[0]/e,y=d.4[1]/e,z=d.4[2]/e;9 s=F.1G(b),c=F.1H(b),t=1-c;8 S.u([[t*x*x+c,t*x*y-s*z,t*x*z+s*y],[t*x*y+s*z,t*y*y+c,t*y*z-s*x],[t*x*z-s*y,t*y*z+s*x,t*z*z+c]])};S.3b=l(t){9 c=F.1H(t),s=F.1G(t);8 S.u([[1,0,0],[0,c,-s],[0,s,c]])};S.39=l(t){9 c=F.1H(t),s=F.1G(t);8 S.u([[c,0,s],[0,1,0],[-s,0,c]])};S.38=l(t){9 c=F.1H(t),s=F.1G(t);8 S.u([[c,-s,0],[s,c,0],[0,0,1]])};S.2J=l(n,m){8 S.1j(n,m).1b(l(){8 F.2F()})};S.1j=l(n,m){9 a=[],12=n,i,G,j;J{i=n-12;a[i]=[];G=m;J{j=m-G;a[i][j]=0}H(--G)}H(--12);8 S.u(a)};l 14(){}14.23={24:l(a){8(7.1m(a)&&7.1h(a.K))},1q:l(){8 14.u(7.K,7.U)},2U:l(a){9 V=a.4||a;8 14.u([7.K.4[0]+V[0],7.K.4[1]+V[1],7.K.4[2]+(V[2]||0)],7.U)},1m:l(a){o(a.W){8 a.1m(7)}9 b=7.U.1C(a.U);8(F.13(b)<=17.16||F.13(b-F.1A)<=17.16)},1o:l(a){o(a.W){8 a.1o(7)}o(a.U){o(7.1m(a)){8 7.1o(a.K)}9 N=7.U.2f(a.U).2q().4;9 A=7.K.4,B=a.K.4;8 F.13((A[0]-B[0])*N[0]+(A[1]-B[1])*N[1]+(A[2]-B[2])*N[2])}1d{9 P=a.4||a;9 A=7.K.4,D=7.U.4;9 b=P[0]-A[0],2a=P[1]-A[1],29=(P[2]||0)-A[2];9 c=F.1x(b*b+2a*2a+29*29);o(c===0)8 0;9 d=(b*D[0]+2a*D[1]+29*D[2])/c;9 e=1-d*d;8 F.13(c*F.1x(e<0?0:e))}},1h:l(a){9 b=7.1o(a);8(b!==w&&b<=17.16)},2T:l(a){8 a.1h(7)},1v:l(a){o(a.W){8 a.1v(7)}8(!7.1m(a)&&7.1o(a)<=17.16)},1U:l(a){o(a.W){8 a.1U(7)}o(!7.1v(a)){8 w}9 P=7.K.4,X=7.U.4,Q=a.K.4,Y=a.U.4;9 b=X[0],1z=X[1],1B=X[2],1T=Y[0],1S=Y[1],1M=Y[2];9 c=P[0]-Q[0],2s=P[1]-Q[1],2r=P[2]-Q[2];9 d=-b*c-1z*2s-1B*2r;9 e=1T*c+1S*2s+1M*2r;9 f=b*b+1z*1z+1B*1B;9 g=1T*1T+1S*1S+1M*1M;9 h=b*1T+1z*1S+1B*1M;9 k=(d*g/f+h*e)/(g-h*h);8 v.u([P[0]+k*b,P[1]+k*1z,P[2]+k*1B])},1r:l(a){o(a.U){o(7.1v(a)){8 7.1U(a)}o(7.1m(a)){8 w}9 D=7.U.4,E=a.U.4;9 b=D[0],1l=D[1],1k=D[2],1P=E[0],1O=E[1],1Q=E[2];9 x=(1k*1P-b*1Q),y=(b*1O-1l*1P),z=(1l*1Q-1k*1O);9 N=v.u([x*1Q-y*1O,y*1P-z*1Q,z*1O-x*1P]);9 P=11.u(a.K,N);8 P.1U(7)}1d{9 P=a.4||a;o(7.1h(P)){8 v.u(P)}9 A=7.K.4,D=7.U.4;9 b=D[0],1l=D[1],1k=D[2],1w=A[0],18=A[1],1a=A[2];9 x=b*(P[1]-18)-1l*(P[0]-1w),y=1l*((P[2]||0)-1a)-1k*(P[1]-18),z=1k*(P[0]-1w)-b*((P[2]||0)-1a);9 V=v.u([1l*x-1k*z,1k*y-b*x,b*z-1l*y]);9 k=7.1o(P)/V.1u();8 v.u([P[0]+V.4[0]*k,P[1]+V.4[1]*k,(P[2]||0)+V.4[2]*k])}},1V:l(t,a){o(1g(a.U)==\'1f\'){a=14.u(a.1N(),v.k)}9 R=S.1R(t,a.U).4;9 C=a.1r(7.K).4;9 A=7.K.4,D=7.U.4;9 b=C[0],1E=C[1],1J=C[2],1w=A[0],18=A[1],1a=A[2];9 x=1w-b,y=18-1E,z=1a-1J;8 14.u([b+R[0][0]*x+R[0][1]*y+R[0][2]*z,1E+R[1][0]*x+R[1][1]*y+R[1][2]*z,1J+R[2][0]*x+R[2][1]*y+R[2][2]*z],[R[0][0]*D[0]+R[0][1]*D[1]+R[0][2]*D[2],R[1][0]*D[0]+R[1][1]*D[1]+R[1][2]*D[2],R[2][0]*D[0]+R[2][1]*D[1]+R[2][2]*D[2]])},1t:l(a){o(a.W){9 A=7.K.4,D=7.U.4;9 b=A[0],18=A[1],1a=A[2],2N=D[0],1l=D[1],1k=D[2];9 c=7.K.1t(a).4;9 d=b+2N,2h=18+1l,2o=1a+1k;9 Q=a.1r([d,2h,2o]).4;9 e=[Q[0]+(Q[0]-d)-c[0],Q[1]+(Q[1]-2h)-c[1],Q[2]+(Q[2]-2o)-c[2]];8 14.u(c,e)}1d o(a.U){8 7.1V(F.1A,a)}1d{9 P=a.4||a;8 14.u(7.K.1t([P[0],P[1],(P[2]||0)]),7.U)}},1Z:l(a,b){a=v.u(a);b=v.u(b);o(a.4.q==2){a.4.19(0)}o(b.4.q==2){b.4.19(0)}o(a.4.q>3||b.4.q>3){8 w}9 c=b.1u();o(c===0){8 w}7.K=a;7.U=v.u([b.4[0]/c,b.4[1]/c,b.4[2]/c]);8 7}};14.u=l(a,b){9 L=25 14();8 L.1Z(a,b)};14.X=14.u(v.1j(3),v.i);14.Y=14.u(v.1j(3),v.j);14.Z=14.u(v.1j(3),v.k);l 11(){}11.23={24:l(a){8(7.1h(a.K)&&7.1m(a))},1q:l(){8 11.u(7.K,7.W)},2U:l(a){9 V=a.4||a;8 11.u([7.K.4[0]+V[0],7.K.4[1]+V[1],7.K.4[2]+(V[2]||0)],7.W)},1m:l(a){9 b;o(a.W){b=7.W.1C(a.W);8(F.13(b)<=17.16||F.13(F.1A-b)<=17.16)}1d o(a.U){8 7.W.2k(a.U)}8 w},2k:l(a){9 b=7.W.1C(a.W);8(F.13(F.1A/2-b)<=17.16)},1o:l(a){o(7.1v(a)||7.1h(a)){8 0}o(a.K){9 A=7.K.4,B=a.K.4,N=7.W.4;8 F.13((A[0]-B[0])*N[0]+(A[1]-B[1])*N[1]+(A[2]-B[2])*N[2])}1d{9 P=a.4||a;9 A=7.K.4,N=7.W.4;8 F.13((A[0]-P[0])*N[0]+(A[1]-P[1])*N[1]+(A[2]-(P[2]||0))*N[2])}},1h:l(a){o(a.W){8 w}o(a.U){8(7.1h(a.K)&&7.1h(a.K.2j(a.U)))}1d{9 P=a.4||a;9 A=7.K.4,N=7.W.4;9 b=F.13(N[0]*(A[0]-P[0])+N[1]*(A[1]-P[1])+N[2]*(A[2]-(P[2]||0)));8(b<=17.16)}},1v:l(a){o(1g(a.U)==\'1f\'&&1g(a.W)==\'1f\'){8 w}8!7.1m(a)},1U:l(a){o(!7.1v(a)){8 w}o(a.U){9 A=a.K.4,D=a.U.4,P=7.K.4,N=7.W.4;9 b=(N[0]*(P[0]-A[0])+N[1]*(P[1]-A[1])+N[2]*(P[2]-A[2]))/(N[0]*D[0]+N[1]*D[1]+N[2]*D[2]);8 v.u([A[0]+D[0]*b,A[1]+D[1]*b,A[2]+D[2]*b])}1d o(a.W){9 c=7.W.2f(a.W).2q();9 N=7.W.4,A=7.K.4,O=a.W.4,B=a.K.4;9 d=S.1j(2,2),i=0;H(d.2y()){i++;d=S.u([[N[i%3],N[(i+1)%3]],[O[i%3],O[(i+1)%3]]])}9 e=d.2w().4;9 x=N[0]*A[0]+N[1]*A[1]+N[2]*A[2];9 y=O[0]*B[0]+O[1]*B[1]+O[2]*B[2];9 f=[e[0][0]*x+e[0][1]*y,e[1][0]*x+e[1][1]*y];9 g=[];2e(9 j=1;j<=3;j++){g.19((i==j)?0:f[(j+(5-i)%3)%3])}8 14.u(g,c)}},1r:l(a){9 P=a.4||a;9 A=7.K.4,N=7.W.4;9 b=(A[0]-P[0])*N[0]+(A[1]-P[1])*N[1]+(A[2]-(P[2]||0))*N[2];8 v.u([P[0]+N[0]*b,P[1]+N[1]*b,(P[2]||0)+N[2]*b])},1V:l(t,a){9 R=S.1R(t,a.U).4;9 C=a.1r(7.K).4;9 A=7.K.4,N=7.W.4;9 b=C[0],1E=C[1],1J=C[2],1w=A[0],18=A[1],1a=A[2];9 x=1w-b,y=18-1E,z=1a-1J;8 11.u([b+R[0][0]*x+R[0][1]*y+R[0][2]*z,1E+R[1][0]*x+R[1][1]*y+R[1][2]*z,1J+R[2][0]*x+R[2][1]*y+R[2][2]*z],[R[0][0]*N[0]+R[0][1]*N[1]+R[0][2]*N[2],R[1][0]*N[0]+R[1][1]*N[1]+R[1][2]*N[2],R[2][0]*N[0]+R[2][1]*N[1]+R[2][2]*N[2]])},1t:l(a){o(a.W){9 A=7.K.4,N=7.W.4;9 b=A[0],18=A[1],1a=A[2],2M=N[0],2L=N[1],2Q=N[2];9 c=7.K.1t(a).4;9 d=b+2M,2p=18+2L,2m=1a+2Q;9 Q=a.1r([d,2p,2m]).4;9 e=[Q[0]+(Q[0]-d)-c[0],Q[1]+(Q[1]-2p)-c[1],Q[2]+(Q[2]-2m)-c[2]];8 11.u(c,e)}1d o(a.U){8 7.1V(F.1A,a)}1d{9 P=a.4||a;8 11.u(7.K.1t([P[0],P[1],(P[2]||0)]),7.W)}},1Z:l(a,b,c){a=v.u(a);a=a.1N();o(a===w){8 w}b=v.u(b);b=b.1N();o(b===w){8 w}o(1g(c)==\'1f\'){c=w}1d{c=v.u(c);c=c.1N();o(c===w){8 w}}9 d=a.4[0],18=a.4[1],1a=a.4[2];9 e=b.4[0],1W=b.4[1],1X=b.4[2];9 f,1i;o(c!==w){9 g=c.4[0],2l=c.4[1],2t=c.4[2];f=v.u([(1W-18)*(2t-1a)-(1X-1a)*(2l-18),(1X-1a)*(g-d)-(e-d)*(2t-1a),(e-d)*(2l-18)-(1W-18)*(g-d)]);1i=f.1u();o(1i===0){8 w}f=v.u([f.4[0]/1i,f.4[1]/1i,f.4[2]/1i])}1d{1i=F.1x(e*e+1W*1W+1X*1X);o(1i===0){8 w}f=v.u([b.4[0]/1i,b.4[1]/1i,b.4[2]/1i])}7.K=a;7.W=f;8 7}};11.u=l(a,b,c){9 P=25 11();8 P.1Z(a,b,c)};11.2I=11.u(v.1j(3),v.k);11.2H=11.u(v.1j(3),v.i);11.2G=11.u(v.1j(3),v.j);11.36=11.2I;11.35=11.2H;11.3j=11.2G;9 $V=v.u;9 $M=S.u;9 $L=14.u;9 $P=11.u;',62,206,'||||elements|||this|return|var||||||||||||function|||if||length||||create|Vector|null|||||||||Math|nj|while||do|anchor||||||||Matrix||direction||normal||||kj|Plane|ni|abs|Line|ki|precision|Sylvester|A2|push|A3|map|els|else||undefined|typeof|contains|mod|Zero|D3|D2|isParallelTo|kp|distanceFrom|cols|dup|pointClosestTo|np|reflectionIn|modulus|intersects|A1|sqrt|isSquare|X2|PI|X3|angleFrom|mod1|C2|mod2|sin|cos|break|C3|toRightTriangular|false|Y3|to3D|E2|E1|E3|Rotation|Y2|Y1|intersectionWith|rotate|v12|v13|rank|setVectors|nc|sum|multiply|prototype|eql|new|setElements|case|each|PA3|PA2|part|new_element|round|for|cross|product|AD2|isSameSizeAs|add|isPerpendicularTo|v22|AN3|inspect|AD3|AN2|toUnitVector|PsubQ3|PsubQ2|v23|dot|divisor|inverse|true|isSingular|determinant|max|canMultiplyFromLeft|subtract|rows|col|random|ZX|YZ|XY|Random|join|N2|N1|D1|slice|default|N3|dimensions|switch|liesIn|translate|snapTo|augment|Diagonal|trace|indexOf|diagonal|transpose|minor|row|isAntiparallelTo|ZY|YX|acos|RotationZ|RotationY|liesOn|RotationX|inv|rk|tr|det|toDiagonalMatrix|toUpperTriangular|version|XZ'.split('|'),0,{})) \ No newline at end of file diff --git a/logo/webgl/ucc-logo.js b/logo/webgl/ucc-logo.js new file mode 100644 index 0000000..1679ec9 --- /dev/null +++ b/logo/webgl/ucc-logo.js @@ -0,0 +1,3 @@ +// UCC Logo as a JavaScript variable +// (Because opening files is hard) +uccLogo="data:image/png;base64,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" diff --git a/logo/webgl/ucc-logo.png b/logo/webgl/ucc-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..0db9b61522970b6dff78a6410b6009a1192f6d39 GIT binary patch literal 44637 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�U6T1m;1N1uY^!SsB0`~Fms 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 literal 0 HcmV?d00001 diff --git a/logo/webgl/webgl.css b/logo/webgl/webgl.css new file mode 100644 index 0000000..e417d4e --- /dev/null +++ b/logo/webgl/webgl.css @@ -0,0 +1,5 @@ +canvas { + border: 2px solid black; + -moz-box-shadow: black 2px 2px 2px; + background-color: white; +} -- GitLab