Browse Source

* `examples/geometry/primitives` ⟶ `src/extras/primitives`
* THREE.Rectangle: `_x1`, ` _x2`, `_y1`, `_y2` ⟶ `_left`, `_right`, `_top`, `_bottom`

Mr.doob 14 years ago
parent
commit
a35b35fde9

File diff suppressed because it is too large
+ 0 - 1
build/Three.js


File diff suppressed because it is too large
+ 0 - 1
build/ThreeDebug.js


+ 2 - 2
examples/camera_free.html

@@ -57,8 +57,8 @@
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableParticle.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableParticle.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 
 
-		<script type="text/javascript" src="geometry/primitives/Sphere.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Sphere.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 

+ 1 - 2
examples/camera_orthographic.html

@@ -16,8 +16,7 @@
 	<body>
 	<body>
 
 
 		<script type="text/javascript" src="../build/Three.js"></script>
 		<script type="text/javascript" src="../build/Three.js"></script>
-
-		<script type="text/javascript" src="geometry/primitives/Cube.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Cube.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 

+ 0 - 176
examples/geometry/cube.html

@@ -1,176 +0,0 @@
-<!DOCTYPE HTML>
-<html lang="en">
-	<head>
-		<title>three.js - geometry - cube</title>
-		<meta charset="utf-8">
-		<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;"/>		
-		<style type="text/css">
-			body
-			{
-				font-family: Monospace;
-				background-color: #f0f0f0;
-				margin: 0px;
-				overflow: hidden;
-			}
-		</style>
-	</head>
-	<body>
-
-		<script type="text/javascript" src="../../build/three.js"></script>
-		<script type="text/javascript" src="http://github.com/mrdoob/stats.js/raw/master/build/stats.js"></script>
-
-		<script type="text/javascript">
-
-			var SCREEN_WIDTH = window.innerWidth;
-			var SCREEN_HEIGHT = window.innerHeight;
-
-			var container;
-			var stats;
-
-			var camera;
-			var scene;
-			var renderer;
-
-			var cube, plane;
-			
-			var targetRotation = 0;
-			var targetRotationOnMouseDown = 0;
-
-			var mouseX = 0;
-			var mouseXOnMouseDown = 0;
-
-			var windowHalfX = window.innerWidth / 2;
-			var windowHalfY = window.innerHeight / 2;
-
-			init();
-			setInterval(loop, 1000/60);
-
-			function init()
-			{
-				container = document.createElement('div');
-				document.body.appendChild(container);
-				
-				var info = document.createElement('div');
-				info.style.position = 'absolute';
-				info.style.top = '10px';
-				info.style.width = '100%';
-				info.style.textAlign = 'center';
-				info.innerHTML = 'Drag to spin the cube';
-				container.appendChild(info);
-			
-				camera = new Camera(0, 150, 400);
-				camera.focus = 300;
-				camera.target.y = 150;
-				camera.updateMatrix();
-
-				scene = new Scene();
-
-				// Cube
-
-				geometry = new Cube(200, 200, 200);
-
-				for (var i = 0; i < geometry.faces.length; i++)
-					geometry.faces[i].color.setRGBA( Math.floor( Math.random() * 128), Math.floor( Math.random() * 128 + 128), Math.floor( Math.random() * 128 + 128), 255 );
-								
-				cube = new Mesh(geometry, new FaceColorMaterial());
-				cube.position.y = 150;
-				cube.updateMatrix();
-				scene.add(cube);
-				
-				// Plane
-				
-				plane = new Mesh(new Plane(200, 200), new ColorMaterial(0xe0e0e0));
-				plane.rotation.x = 90 * (Math.PI / 180);
-				plane.updateMatrix();
-				scene.add(plane);
-				
-				renderer = new CanvasRenderer();
-				renderer.setSize(SCREEN_WIDTH, SCREEN_HEIGHT);
-
-				container.appendChild(renderer.viewport);
-
-				stats = new Stats();
-				stats.domElement.style.position = 'absolute';
-				stats.domElement.style.top = '0px';
-				container.appendChild(stats.domElement);
-				
-				document.addEventListener('mousedown', onDocumentMouseDown, false);
-				document.addEventListener('touchstart', onDocumentTouchStart, false);
-				document.addEventListener('touchmove', onDocumentTouchMove, false);
-			}
-
-			//
-
-			function onDocumentMouseDown( event )
-			{
-				event.preventDefault();
-				
-				document.addEventListener('mousemove', onDocumentMouseMove, false);
-				document.addEventListener('mouseup', onDocumentMouseUp, false);
-				document.addEventListener('mouseout', onDocumentMouseOut, false);
-				
-				mouseXOnMouseDown = event.clientX - windowHalfX;
-				targetRotationOnMouseDown = targetRotation;
-			}
-
-			function onDocumentMouseMove( event )
-			{
-				mouseX = event.clientX - windowHalfX;
-				
-				targetRotation = targetRotationOnMouseDown + (mouseX - mouseXOnMouseDown) * 0.02;
-			}
-			
-			function onDocumentMouseUp( event )
-			{
-				document.removeEventListener('mousemove', onDocumentMouseMove, false);
-				document.removeEventListener('mouseup', onDocumentMouseUp, false);
-				document.removeEventListener('mouseout', onDocumentMouseOut, false);
-			}
-			
-			function onDocumentMouseOut( event )
-			{
-				document.removeEventListener('mousemove', onDocumentMouseMove, false);
-				document.removeEventListener('mouseup', onDocumentMouseUp, false);
-				document.removeEventListener('mouseout', onDocumentMouseOut, false);
-			}
-			
-			function onDocumentTouchStart( event )
-			{
-				if(event.touches.length == 1)
-				{
-					event.preventDefault();
-
-					mouseXOnMouseDown = event.touches[0].pageX - windowHalfX;
-					targetRotationOnMouseDown = targetRotation;
-				}
-			}
-
-			function onDocumentTouchMove( event )
-			{
-				if(event.touches.length == 1)
-				{
-					event.preventDefault();
-					
-					mouseX = event.touches[0].pageX - windowHalfX;
-					targetRotation = targetRotationOnMouseDown + (mouseX - mouseXOnMouseDown) * 0.05;
-				}
-			}
-
-			//
-
-			function loop()
-			{
-				cube.rotation.y += (targetRotation - cube.rotation.y) * 0.05;
-				cube.updateMatrix();
-				
-				plane.rotation.z = -cube.rotation.y;
-				plane.updateMatrix();
-				
-				renderer.render(scene, camera);
-				stats.update();
-			}
-	
-		</script>
-
-	</body>
-</html>

+ 0 - 46
examples/geometry/primitives/Cube.js

@@ -1,46 +0,0 @@
-/**
- * @author mr.doob / http://mrdoob.com/
- */
-
-var Cube = function (width, height, depth) {
-
-	THREE.Geometry.call(this);
-
-	var scope = this,
-	width_half = width / 2,
-	height_half = height / 2,
-	depth_half = depth / 2;
-
-	v(  width_half,  height_half, -depth_half );
-	v(  width_half, -height_half, -depth_half );
-	v( -width_half, -height_half, -depth_half );
-	v( -width_half,  height_half, -depth_half );
-	v(  width_half,  height_half,  depth_half );
-	v(  width_half, -height_half,  depth_half );
-	v( -width_half, -height_half,  depth_half );
-	v( -width_half,  height_half,  depth_half );
-
-	f4( 0, 1, 2, 3 );
-	f4( 4, 7, 6, 5 );
-	f4( 0, 4, 5, 1 );
-	f4( 1, 5, 6, 2 );
-	f4( 2, 6, 7, 3 );
-	f4( 4, 0, 3, 7 );
-
-	function v(x, y, z) {
-
-		scope.vertices.push( new THREE.Vertex( new THREE.Vector3( x, y, z ) ) );
-	}
-
-	function f4(a, b, c, d) {
-
-		scope.faces.push( new THREE.Face4( a, b, c, d ) );
-	}
-
-	this.computeCentroids();
-	this.computeNormals();
-
-}
-
-Cube.prototype = new THREE.Geometry();
-Cube.prototype.constructor = Cube;

+ 0 - 83
examples/geometry/primitives/Cylinder.js

@@ -1,83 +0,0 @@
-/**
- * @author kile / http://kile.stravaganza.org/
- */
-
-var Cylinder = function (numSegs, topRad, botRad, height, topOffset, botOffset) {
-
-	THREE.Geometry.call(this);
-
-	var scope = this, i;
-
-	// VERTICES
-
-	// Top circle vertices
-	for (i = 0; i < numSegs; i++) {
-
-		v( 
-			Math.sin(2 * 3.1415 * i / numSegs)*topRad,
-			Math.cos(2 * 3.1415 * i / numSegs)*topRad,
-			0);
-	}
-
-	// Bottom circle vertices
-	for (i = 0; i < numSegs; i++) {
-
-		v(  
-			Math.sin(2 * 3.1415 * i / numSegs)*botRad,
-			Math.cos(2 * 3.1415 * i / numSegs)*botRad,
-			height);
-	}
-
-
-	// FACES
-
-	// Body	
-	for (i = 0; i < numSegs; i++) {
-
-		f4(i, i + numSegs, numSegs + (i + 1) % numSegs, (i + 1) % numSegs, '#ff0000');
-	}
-
-	// Bottom circle
-	if (botRad != 0) {
-
-		v(0, 0, -topOffset);
-
-		for (i = numSegs; i < numSegs + (numSegs / 2); i++) {
-
-			f4(2 * numSegs,
-			(2 * i - 2 * numSegs) % numSegs,
-			(2 * i - 2 * numSegs + 1) % numSegs,
-			(2 * i - 2 * numSegs + 2) % numSegs);
-		}
-	}
-
-	// Top circle
-	if (topRad != 0) {
-
-		v(0, 0, height + topOffset);
-
-		for (i = numSegs + (numSegs / 2); i < 2 * numSegs; i++) {
-
-			f4(	(2 * i - 2 * numSegs + 2) % numSegs + numSegs,
-				(2 * i - 2 * numSegs + 1) % numSegs + numSegs,
-				(2 * i - 2 * numSegs) % numSegs+numSegs, 
-				2 * numSegs + 1);
-		}
-	}
-
-	this.computeCentroids();
-	this.computeNormals();
-
-	function v(x, y, z) {
-
-		scope.vertices.push( new THREE.Vertex( new THREE.Vector3( x, y, z ) ) );
-	}
-
-	function f4(a, b, c, d) {
-
-		scope.faces.push( new THREE.Face4( a, b, c, d ) );
-	}
-}
-
-Cylinder.prototype = new THREE.Geometry();
-Cylinder.prototype.constructor = Cylinder;

+ 0 - 61
examples/geometry/primitives/Plane.js

@@ -1,61 +0,0 @@
-/**
- * @author mr.doob / http://mrdoob.com/
- * based on http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/org/papervision3d/objects/primitives/Plane.as
- */
-
-var Plane = function ( width, height, segments_width, segments_height ) {
-
-	THREE.Geometry.call( this );
-
-	var ix, iy,
-	width_half = width / 2,
-	height_half = height / 2,
-	gridX = segments_width || 1,
-	gridY = segments_height || 1,
-	gridX1 = gridX + 1,
-	gridY1 = gridY + 1,
-	segment_width = width / gridX,
-	segment_height = height / gridY;
-
-
-	for( iy = 0; iy < gridY1; iy++ ) {
-
-		for( ix = 0; ix < gridX1; ix++ ) {
-
-			var x = ix * segment_width - width_half;
-			var y = iy * segment_height - height_half;
-
-			this.vertices.push( new THREE.Vertex( new THREE.Vector3( x, - y, 0 ) ) );
-
-		}
-
-	}
-
-	for( iy = 0; iy < gridY; iy++ ) {
-
-		for( ix = 0; ix < gridX; ix++ ) {
-
-			var a = ix + gridX1 * iy;
-			var b = ix + gridX1 * ( iy + 1 );
-			var c = ( ix + 1 ) + gridX1 * ( iy + 1 );
-			var d = ( ix + 1 ) + gridX1 * iy;
-
-			this.faces.push( new THREE.Face4( a, b, c, d ) );
-			this.uvs.push( [
-						new THREE.UV( ix / gridX, iy / gridY ),
-						new THREE.UV( ix / gridX, ( iy + 1 ) / gridY ),
-						new THREE.UV( ( ix + 1 ) / gridX, ( iy + 1 ) / gridY ),
-						new THREE.UV( ( ix + 1 ) / gridX, iy / gridY )
-					] );
-
-		}
-
-	}
-
-	this.computeCentroids();
-	this.computeNormals();
-
-}
-
-Plane.prototype = new THREE.Geometry();
-Plane.prototype.constructor = Plane;

+ 0 - 127
examples/geometry/primitives/Sphere.js

@@ -1,127 +0,0 @@
-/**
- * @author mr.doob / http://mrdoob.com/
- * based on http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/org/papervision3d/objects/primitives/Sphere.as
- */
-
-var Sphere = function ( radius, segments_width, segments_height, smooth ) {
-
-	THREE.Geometry.call( this );
-
-	var gridX = segments_width || 8,
-	gridY = segments_height || 6;
-
-	var i, j;
-	var iHor = Math.max( 3, gridX );
-	var iVer = Math.max( 2, gridY );
-	var aVtc = [];
-
-	for ( j = 0; j < ( iVer + 1 ) ; j++ ) {
-
-		var fRad1 = j / iVer;
-		var fZ = radius * Math.cos( fRad1 * Math.PI );
-		var fRds = radius * Math.sin( fRad1 * Math.PI );
-		var aRow = [];
-		var oVtx = 0;
-
-		for ( i = 0; i < iHor; i++ ) {
-
-			var fRad2 = 2 * i / iHor;
-			var fX = fRds * Math.sin( fRad2 * Math.PI );
-			var fY = fRds * Math.cos( fRad2 * Math.PI );
-
-			if ( !( ( j == 0 || j == iVer ) && i > 0 ) ) {
-
-				oVtx = this.vertices.push( new THREE.Vertex( new THREE.Vector3( fY, fZ, fX ) ) ) - 1;
-
-			}
-
-			aRow.push( oVtx );
-
-		}
-
-		aVtc.push( aRow );
-
-	}
-
-	var n1, n2, n3, iVerNum = aVtc.length;
-
-	for ( j = 0; j < iVerNum; j++ ) {
-
-		var iHorNum = aVtc[ j ].length;
-
-		if ( j > 0 ) {
-
-			for ( i = 0; i < iHorNum; i++ ) {
-
-				var bEnd = i == ( iHorNum - 1 );
-				var aP1 = aVtc[ j ][ bEnd ? 0 : i + 1 ];
-				var aP2 = aVtc[ j ][ ( bEnd ? iHorNum - 1 : i ) ];
-				var aP3 = aVtc[ j - 1 ][ ( bEnd ? iHorNum - 1 : i ) ];
-				var aP4 = aVtc[ j - 1 ][ bEnd ? 0 : i + 1 ];
-
-				var fJ0 = j / ( iVerNum - 1 );
-				var fJ1 = ( j - 1 ) / ( iVerNum - 1 );
-				var fI0 = ( i + 1 ) / iHorNum;
-				var fI1 = i / iHorNum;
-
-				var aP1uv = new THREE.UV( 1 - fI0, fJ0 );
-				var aP2uv = new THREE.UV( 1 - fI1, fJ0 );
-				var aP3uv = new THREE.UV( 1 - fI1, fJ1 );
-				var aP4uv = new THREE.UV( 1 - fI0, fJ1 );
-
-				if ( j < ( aVtc.length - 1 ) ) {
-
-					n1 = this.vertices[ aP1 ].position.clone();
-					n2 = this.vertices[ aP2 ].position.clone();
-					n3 = this.vertices[ aP3 ].position.clone();
-					n1.normalize();
-					n2.normalize();
-					n3.normalize();
-
-					if ( smooth ) {
-
-						this.faces.push( new THREE.Face3( aP1, aP2, aP3, [ new THREE.Vector3( n1.x, n1.y, n1.z ), new THREE.Vector3( n2.x, n2.y, n2.z ), new THREE.Vector3( n3.x, n3.y, n3.z ) ] ) );
-
-					} else {
-
-						this.faces.push( new THREE.Face3( aP1, aP2, aP3 ) );
-
-					}
-
-					this.uvs.push( [ aP1uv, aP2uv, aP3uv ] );
-
-				}
-
-				if ( j > 1 ) {
-
-					n1 = this.vertices[aP1].position.clone();
-					n2 = this.vertices[aP3].position.clone();
-					n3 = this.vertices[aP4].position.clone();
-					n1.normalize();
-					n2.normalize();
-					n3.normalize();
-
-					if ( smooth ) {
-
-						this.faces.push( new THREE.Face3( aP1, aP3, aP4, [ new THREE.Vector3( n1.x, n1.y, n1.z ), new THREE.Vector3( n2.x, n2.y, n2.z ), new THREE.Vector3( n3.x, n3.y, n3.z ) ] ) );
-
-					} else {
-
-						this.faces.push( new THREE.Face3( aP1, aP3, aP4 ) );
-
-					}
-
-					this.uvs.push( [ aP1uv, aP3uv, aP4uv ] );
-
-				}
-
-			}
-		}
-	}
-
-	this.computeCentroids();
-	this.computeNormals();
-}
-
-Sphere.prototype = new THREE.Geometry();
-Sphere.prototype.constructor = Sphere;

+ 6 - 13
examples/geometry_cube.html

@@ -16,23 +16,16 @@
 	<body>
 	<body>
 
 
 		<script type="text/javascript" src="../build/Three.js"></script>
 		<script type="text/javascript" src="../build/Three.js"></script>
-
-		<script type="text/javascript" src="geometry/primitives/Cube.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Cube.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 
 		<script type="text/javascript">
 		<script type="text/javascript">
 
 
-			var SCREEN_WIDTH = window.innerWidth;
-			var SCREEN_HEIGHT = window.innerHeight;
-
-			var container;
-			var stats;
+			var container, stats;
 
 
-			var camera;
-			var scene;
-			var renderer;
+			var camera, scene, renderer;
 
 
 			var cube, plane;
 			var cube, plane;
 
 
@@ -61,7 +54,7 @@
 				info.innerHTML = 'Drag to spin the cube';
 				info.innerHTML = 'Drag to spin the cube';
 				container.appendChild( info );
 				container.appendChild( info );
 
 
-				camera = new THREE.Camera( 70, SCREEN_WIDTH / SCREEN_HEIGHT, 1, 10000 );
+				camera = new THREE.Camera( 70, window.innerWidth / window.innerHeight, 1, 10000 );
 				camera.position.y = 150;
 				camera.position.y = 150;
 				camera.position.z = 500;
 				camera.position.z = 500;
 				camera.target.position.y = 150;
 				camera.target.position.y = 150;
@@ -88,7 +81,7 @@
 				scene.addObject( plane );
 				scene.addObject( plane );
 
 
 				renderer = new THREE.CanvasRenderer();
 				renderer = new THREE.CanvasRenderer();
-				renderer.setSize( SCREEN_WIDTH, SCREEN_HEIGHT );
+				renderer.setSize(  window.innerWidth, window.innerHeight );
 
 
 				container.appendChild( renderer.domElement );
 				container.appendChild( renderer.domElement );
 
 

+ 2 - 3
examples/geometry_earth.html

@@ -36,9 +36,8 @@
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 
 		<script type="text/javascript" src="../build/Three.js"></script>
 		<script type="text/javascript" src="../build/Three.js"></script>
-
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Sphere.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Sphere.js"></script>
 
 
 		<script type="text/javascript">
 		<script type="text/javascript">
 
 

+ 1 - 2
examples/geometry_large_mesh.html

@@ -45,8 +45,7 @@
 		<pre id="log"></pre>
 		<pre id="log"></pre>
 
 
 		<script type="text/javascript" src="../build/Three.js"></script>
 		<script type="text/javascript" src="../build/Three.js"></script>
-
-		<script type="text/javascript" src="geometry/primitives/Sphere.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Sphere.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 

+ 1 - 2
examples/geometry_terrain.html

@@ -37,8 +37,7 @@
 		<script type="text/javascript" src="js/ImprovedNoise.js"></script>
 		<script type="text/javascript" src="js/ImprovedNoise.js"></script>
 
 
 		<script type="text/javascript" src="../build/Three.js"></script>
 		<script type="text/javascript" src="../build/Three.js"></script>
-
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
 
 
 		<script type="text/javascript">
 		<script type="text/javascript">
 
 

+ 1 - 1
examples/geometry_vr.html

@@ -31,7 +31,7 @@
 		<div id="info"><a href="http://github.com/mrdoob/three.js" target="_blank">three.js</a> - vr demo. skybox by <a href="http://www.zfight.com/" target="_blank">Jochum Skoglund</a></div>
 		<div id="info"><a href="http://github.com/mrdoob/three.js" target="_blank">three.js</a> - vr demo. skybox by <a href="http://www.zfight.com/" target="_blank">Jochum Skoglund</a></div>
 
 
 		<script type="text/javascript" src="../build/Three.js"></script>
 		<script type="text/javascript" src="../build/Three.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
 
 
 		<script type="text/javascript">
 		<script type="text/javascript">
 
 

+ 1 - 3
examples/interactive_cubes.html

@@ -15,9 +15,7 @@
 	<body>
 	<body>
 
 
 		<script type="text/javascript" src="../build/Three.js"></script>
 		<script type="text/javascript" src="../build/Three.js"></script>
-
-		<script type="text/javascript" src="geometry/primitives/Cube.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Sphere.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Cube.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 

+ 2 - 2
examples/interactive_voxelpainter.html

@@ -16,8 +16,8 @@
 
 
 		<script type="text/javascript" src="../build/Three.js"></script>
 		<script type="text/javascript" src="../build/Three.js"></script>
 
 
-		<script type="text/javascript" src="geometry/primitives/Cube.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Cube.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 

+ 2 - 4
examples/lights_pointlights_gl.html

@@ -82,11 +82,9 @@
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableFace4.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableFace4.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableParticle.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableParticle.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
-		<!--
 
 
-		-->
-		<script type="text/javascript" src="geometry/primitives/Sphere.js"></script> 
-		
+		<script type="text/javascript" src="../src/extras/primitives/Sphere.js"></script> 
+
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 
 		<script type="text/javascript">
 		<script type="text/javascript">

+ 6 - 6
examples/lights_test.html

@@ -85,15 +85,15 @@
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableParticle.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableParticle.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 		-->
 		-->
-		
-		<script type="text/javascript" src="geometry/primitives/Sphere.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
+
+		<script type="text/javascript" src="../src/extras/primitives/Sphere.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 
 		<script type="text/javascript">
 		<script type="text/javascript">
 
 
-			var SCREEN_WIDTH = window.innerWidth/2;
+			var SCREEN_WIDTH = window.innerWidth / 2;
 			var SCREEN_HEIGHT = window.innerHeight;
 			var SCREEN_HEIGHT = window.innerHeight;
 			var FLOOR = -250;
 			var FLOOR = -250;
 
 
@@ -105,9 +105,9 @@
 			var canvasRenderer, webglRenderer;
 			var canvasRenderer, webglRenderer;
 
 
 			var mesh, zmesh, lightMesh, geometry;
 			var mesh, zmesh, lightMesh, geometry;
-			
+
 			var directionalLight, pointLight;
 			var directionalLight, pointLight;
-			
+
 			var mouseX = 0;
 			var mouseX = 0;
 			var mouseY = 0;
 			var mouseY = 0;
 
 

+ 3 - 3
examples/materials_test.html

@@ -88,9 +88,9 @@
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableParticle.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableParticle.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 		-->
 		-->
-		
-		<script type="text/javascript" src="geometry/primitives/Sphere.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
+
+		<script type="text/javascript" src="../src/extras/primitives/Sphere.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 

+ 2 - 2
examples/materials_video.html

@@ -16,9 +16,9 @@
 	<body>
 	<body>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
-		<script type="text/javascript" src="../build/Three.js"></script>
 
 
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
+		<script type="text/javascript" src="../build/Three.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
 
 
 		<video id="video" autoplay style="display:none">
 		<video id="video" autoplay style="display:none">
 			<source src="textures/sintel.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
 			<source src="textures/sintel.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>

+ 2 - 2
examples/obj_convert_test.html

@@ -90,8 +90,8 @@
 		-->
 		-->
 		
 		
 
 
-		<script type="text/javascript" src="geometry/primitives/Sphere.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Sphere.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 

+ 1 - 1
examples/shader_test.html

@@ -88,7 +88,7 @@
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 		-->
 		-->
 		
 		
-		<script type="text/javascript" src="geometry/primitives/Sphere.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Sphere.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 

+ 3 - 3
examples/test.html

@@ -56,9 +56,9 @@
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 		<script type="text/javascript" src="../src/renderers/renderables/RenderableLine.js"></script>
 
 
 		<script type="text/javascript" src="geometry/Qrcode.js"></script>
 		<script type="text/javascript" src="geometry/Qrcode.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Cube.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Plane.js"></script>
-		<script type="text/javascript" src="geometry/primitives/Cylinder.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Cube.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Plane.js"></script>
+		<script type="text/javascript" src="../src/extras/primitives/Cylinder.js"></script>
 
 
 		<script type="text/javascript" src="js/Stats.js"></script>
 		<script type="text/javascript" src="js/Stats.js"></script>
 
 

+ 44 - 42
src/core/Rectangle.js

@@ -4,26 +4,26 @@
 
 
 THREE.Rectangle = function () {
 THREE.Rectangle = function () {
 
 
-	var _x1, _y1, _x2, _y2,
+	var _left, _top, _right, _bottom,
 	_width, _height,
 	_width, _height,
 	_isEmpty = true;
 	_isEmpty = true;
 
 
 	function resize() {
 	function resize() {
 
 
-		_width = _x2 - _x1;
-		_height = _y2 - _y1;
+		_width = _right - _left;
+		_height = _bottom - _top;
 
 
 	}
 	}
 
 
 	this.getX = function () {
 	this.getX = function () {
 
 
-		return _x1;
+		return _left;
 
 
 	};
 	};
 
 
 	this.getY = function () {
 	this.getY = function () {
 
 
-		return _y1;
+		return _top;
 
 
 	};
 	};
 
 
@@ -39,36 +39,36 @@ THREE.Rectangle = function () {
 
 
 	};
 	};
 
 
-	this.getX1 = function() {
+	this.getLeft = function() {
 
 
-		return _x1;
+		return _left;
 
 
 	};
 	};
 
 
-	this.getY1 = function() {
+	this.getTop = function() {
 
 
-		return _y1;
+		return _top;
 
 
 	};
 	};
 
 
-	this.getX2 = function() {
+	this.getRight = function() {
 
 
-		return _x2;
+		return _right;
 
 
 	};
 	};
 
 
-	this.getY2 = function() {
+	this.getBottom = function() {
 
 
-		return _y2;
+		return _bottom;
 
 
 	};
 	};
 
 
-	this.set = function ( x1, y1, x2, y2 ) {
+	this.set = function ( left, top, right, bottom ) {
 
 
 		_isEmpty = false;
 		_isEmpty = false;
 
 
-		_x1 = x1; _y1 = y1;
-		_x2 = x2; _y2 = y2;
+		_left = left; _top = top;
+		_right = right; _bottom = bottom;
 
 
 		resize();
 		resize();
 
 
@@ -79,15 +79,15 @@ THREE.Rectangle = function () {
 		if ( _isEmpty ) {
 		if ( _isEmpty ) {
 
 
 			_isEmpty = false;
 			_isEmpty = false;
-			_x1 = x; _y1 = y;
-			_x2 = x; _y2 = y;
+			_left = x; _top = y;
+			_right = x; _bottom = y;
 
 
 		} else {
 		} else {
 
 
-			_x1 = Math.min( _x1, x );
-			_y1 = Math.min( _y1, y );
-			_x2 = Math.max( _x2, x );
-			_y2 = Math.max( _y2, y );
+			_left = Math.min( _left, x );
+			_top = Math.min( _top, y );
+			_right = Math.max( _right, x );
+			_bottom = Math.max( _bottom, y );
 
 
 		}
 		}
 
 
@@ -100,15 +100,15 @@ THREE.Rectangle = function () {
 		if ( _isEmpty ) {
 		if ( _isEmpty ) {
 
 
 			_isEmpty = false;
 			_isEmpty = false;
-			_x1 = r.getX1(); _y1 = r.getY1();
-			_x2 = r.getX2(); _y2 = r.getY2();
+			_left = r.getLeft(); _top = r.getTop();
+			_right = r.getRight(); _bottom = r.getBottom();
 
 
 		} else {
 		} else {
 
 
-			_x1 = Math.min(_x1, r.getX1());
-			_y1 = Math.min(_y1, r.getY1());
-			_x2 = Math.max(_x2, r.getX2());
-			_y2 = Math.max(_y2, r.getY2());
+			_left = Math.min(_left, r.getLeft());
+			_top = Math.min(_top, r.getTop());
+			_right = Math.max(_right, r.getRight());
+			_bottom = Math.max(_bottom, r.getBottom());
 
 
 		}
 		}
 
 
@@ -118,35 +118,37 @@ THREE.Rectangle = function () {
 
 
 	this.inflate = function ( v ) {
 	this.inflate = function ( v ) {
 
 
-		_x1 -= v; _y1 -= v;
-		_x2 += v; _y2 += v;
+		_left -= v; _top -= v;
+		_right += v; _bottom += v;
 
 
 		resize();
 		resize();
 
 
 	};
 	};
 
 
-	this.minSelf = function( r ) {
+	this.minSelf = function ( r ) {
 
 
-		_x1 = Math.max( _x1, r.getX1() );
-		_y1 = Math.max( _y1, r.getY1() );
-		_x2 = Math.min( _x2, r.getX2() );
-		_y2 = Math.min( _y2, r.getY2() );
+		_left = Math.max( _left, r.getLeft() );
+		_top = Math.max( _top, r.getTop() );
+		_right = Math.min( _right, r.getRight() );
+		_bottom = Math.min( _bottom, r.getBottom() );
 
 
 		resize();
 		resize();
 
 
 	};
 	};
 
 
 	/*
 	/*
-	this.containsPoint = function (x, y) {
+	this.contains = function ( x, y ) {
 
 
-		return x > _x1 && x < _x2 && y > _y1 && y < _y2;
+		return x > _left && x < _right && y > _top && y < _bottom;
 
 
-	}
+	};
 	*/
 	*/
 
 
 	this.instersects = function ( r ) {
 	this.instersects = function ( r ) {
 
 
-		return Math.min( _x2, r.getX2() ) - Math.max( _x1, r.getX1() ) >= 0 && Math.min( _y2, r.getY2() ) - Math.max( _y1, r.getY1() ) >= 0;
+		// return this.contains( r.getLeft(), r.getTop() ) || this.contains( r.getRight(), r.getTop() ) || this.contains( r.getLeft(), r.getBottom() ) || this.contains( r.getRight(), r.getBottom() );
+
+		return Math.min( _right, r.getRight() ) - Math.max( _left, r.getLeft() ) >= 0 && Math.min( _bottom, r.getBottom() ) - Math.max( _top, r.getTop() ) >= 0;
 
 
 	};
 	};
 
 
@@ -154,8 +156,8 @@ THREE.Rectangle = function () {
 
 
 		_isEmpty = true;
 		_isEmpty = true;
 
 
-		_x1 = 0; _y1 = 0;
-		_x2 = 0; _y2 = 0;
+		_left = 0; _top = 0;
+		_right = 0; _bottom = 0;
 
 
 		resize();
 		resize();
 
 
@@ -169,7 +171,7 @@ THREE.Rectangle = function () {
 
 
 	this.toString = function () {
 	this.toString = function () {
 
 
-		return "THREE.Rectangle (x1: " + _x1 + ", y1: " + _y2 + ", x2: " + _x2 + ", y1: " + _y1 + ", width: " + _width + ", height: " + _height + ")";
+		return "THREE.Rectangle (x1: " + _left + ", y1: " + _bottom + ", x2: " + _right + ", y1: " + _top + ", width: " + _width + ", height: " + _height + ")";
 
 
 	};
 	};
 
 

Some files were not shown because too many files changed in this diff