Center of Dilation
by sirfizx
HTML
<script src="http://andrewray.me/threejs-examples/font-example/js/janda_manatee_solid_regular.typeface.js"></script>
CSS
body {
overflow: hidden;
background-color: #ccccff;
}
JavaScript
var camera, scene, renderer, ambientLight, directionalLight;
var geometry;
var material;
var mesh;
var v1i,v2i,v3i;
var v1, v2, v3;
var d1,d2,d3;
var poc;
var ttc;
var elapsedTime;
var clock;
init();
animate();
function init() {
// SCENE
scene = new THREE.Scene();
// CAMERA
camera = new THREE.PerspectiveCamera
(50, //Field of View Angle
window.innerWidth / window.innerHeight,//Aspect Ratio
1,//Near clipping plane
10000);//Far clipping plane
camera.position.set(0, 65, 100);
camera.lookAt(scene.position);
// LIGHTs
ambientLight = new THREE.AmbientLight(0x101010);
scene.add(ambientLight);
directionalLight = new THREE.DirectionalLight(0xffffff);
directionalLight.position = camera.position;
scene.add(directionalLight);
// POINT OF CONVERGENCE
poc = new THREE.Vector3(-30,30,0);
// TIME TO CONVERGE
ttc = 0.5; // 0.5 seconds to converge
// GEOMETRY
geometry = new THREE.Geometry();
v1i = new THREE.Vector3(-50, 0, 0);
v2i = new THREE.Vector3(0, 50, 0);
v3i = new THREE.Vector3(50, 0, 0);
v1 = v1i;
v2 = v2i;
v3 = v3i;
d1 = new THREE.Vector3();
d2 = new THREE.Vector3();
d3 = new THREE.Vector3();
//console.log(d2.sub(poc,v2));
d1.sub(poc,v1);
d2.sub(poc,v2);
d3.sub(poc,v3);
geometry.vertices.push(v1);
geometry.vertices.push(v2);
geometry.vertices.push(v3);
geometry.faces.push(new THREE.Face3(0, 1, 2));
geometry.computeFaceNormals();
// MATERIAL
material = new THREE.MeshLambertMaterial({
color: 0xff0000,
shading: THREE.FlatShading
});
material.side = THREE.DoubleSide;
//material.side = THREE.FrontSide;
// MESH
mesh = new THREE.Mesh(geometry, material);
scene.add(mesh);
// RENDERER
renderer = new THREE.CanvasRenderer();
renderer.setSize(window.innerWidth,...