소스 검색

Renamed TypedVector* to ProxyVector*.

Mr.doob 11 년 전
부모
커밋
10543ca332

+ 2 - 2
examples/js/wip/PlaneGeometryB.js → examples/js/wip/PlaneBufferGeometry.js

@@ -3,7 +3,7 @@
  * based on http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/org/papervision3d/objects/primitives/Plane.as
  */
 
-THREE.PlaneGeometryB = function ( width, height, widthSegments, heightSegments ) {
+THREE.PlaneBufferGeometry = function ( width, height, widthSegments, heightSegments ) {
 
 	THREE.BufferGeometry.call( this );
 
@@ -90,4 +90,4 @@ THREE.PlaneGeometryB = function ( width, height, widthSegments, heightSegments )
 
 };
 
-THREE.PlaneGeometryB.prototype = Object.create( THREE.BufferGeometry.prototype );
+THREE.PlaneBufferGeometry.prototype = Object.create( THREE.BufferGeometry.prototype );

+ 29 - 0
examples/js/wip/PlaneGeometry6.js

@@ -0,0 +1,29 @@
+/**
+ * @author mrdoob / http://mrdoob.com/
+ */
+
+THREE.PlaneGeometry6 = function ( width, height, widthSegments, heightSegments ) {
+
+	THREE.PlaneBufferGeometry.call( this, width, height, widthSegments, heightSegments );
+
+	var indices = this.attributes.index.array;
+	var vertices = this.attributes.position.array;
+	var normals = this.attributes.normal.array;
+	var uvs = this.attributes.uv.array;
+
+	this.indices = indices;
+	this.vertices = [];
+	this.normals = [];
+	this.uvs = [];
+
+	for ( var i = 0, l = vertices.length / 3; i < l; i ++ ) {
+
+		this.vertices.push( new THREE.ProxyVector3( vertices, i * 3 ) );
+		this.normals.push( new THREE.ProxyVector3( normals, i * 3 ) );
+		this.uvs.push( new THREE.ProxyVector2( uvs, i * 2 ) );
+
+	}
+
+};
+
+THREE.PlaneGeometry6.prototype = Object.create( THREE.PlaneBufferGeometry.prototype );

+ 0 - 151
examples/js/wip/PlaneGeometryB2.js

@@ -1,151 +0,0 @@
-/**
- * @author mrdoob / http://mrdoob.com/
- * based on http://papervision3d.googlecode.com/svn/trunk/as3/trunk/src/org/papervision3d/objects/primitives/Plane.as
- */
-
-THREE.PlaneGeometryB2 = function ( width, height, widthSegments, heightSegments ) {
-
-	THREE.BufferGeometry.call( this );
-
-	this.parameters = {
-		width: width,
-		height: height,
-		widthSegments: widthSegments,
-		heightSegments: heightSegments
-	};
-
-	var width_half = width / 2;
-	var height_half = height / 2;
-
-	var gridX = widthSegments || 1;
-	var gridY = heightSegments || 1;
-
-	var gridX1 = gridX + 1;
-	var gridY1 = gridY + 1;
-
-	var segment_width = width / gridX;
-	var segment_height = height / gridY;
-
-	var vertices = new Float32Array( gridX1 * gridY1 * 3 );
-	var normals = new Float32Array( gridX1 * gridY1 * 3 );
-	var uvs = new Float32Array( gridX1 * gridY1 * 2 );
-
-	var offset = 0;
-	var offset2 = 0;
-
-	for ( var iy = 0; iy < gridY1; iy ++ ) {
-
-		var y = iy * segment_height - height_half;
-
-		for ( var ix = 0; ix < gridX1; ix ++ ) {
-
-			var x = ix * segment_width - width_half;
-
-			vertices[ offset     ] = x;
-			vertices[ offset + 1 ] = - y;
-
-			normals[ offset + 2 ] = 1;
-
-			uvs[ offset2     ] = ix / gridX;
-			uvs[ offset2 + 1 ] = 1 - ( iy / gridY );
-
-			offset += 3;
-			offset2 += 2;
-
-		}
-
-	}
-
-	offset = 0;
-
-	var indices = new Uint16Array( gridX * gridY * 6 );
-
-	for ( var iy = 0; iy < gridY; iy ++ ) {
-
-		for ( var 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;
-
-			indices[ offset     ] = a;
-			indices[ offset + 1 ] = b;
-			indices[ offset + 2 ] = d;
-
-			indices[ offset + 3 ] = b;
-			indices[ offset + 4 ] = c;
-			indices[ offset + 5 ] = d;
-
-			offset += 6;
-
-		}
-
-	}
-
-	this.attributes[ 'index' ] = { array: indices, itemSize: 1 };
-	this.attributes[ 'position' ] = { array: vertices, itemSize: 3 };
-	this.attributes[ 'normal' ] = { array: normals, itemSize: 3 };
-	this.attributes[ 'uv' ] = { array: uvs, itemSize: 2 };
-
-	this.vertices = [];
-	this.normals = [];
-	this.uvs = [];
-
-	for ( var i = 0, l = vertices.length / 3; i < l; i ++ ) {
-
-		this.vertices.push( new THREE.TypedVector3( vertices, i * 3 ) );
-		this.normals.push( new THREE.TypedVector3( normals, i * 3 ) );
-		this.uvs.push( new THREE.TypedVector2( uvs, i * 2 ) );
-
-	}
-
-};
-
-THREE.PlaneGeometryB2.prototype = Object.create( THREE.BufferGeometry.prototype );
-
-//
-
-THREE.TypedVector2 = function ( array, offset ) {
-
-	this.array = array;
-	this.offset = offset;
-	
-};
-
-THREE.TypedVector2.prototype = Object.create( THREE.Vector2.prototype );
-
-Object.defineProperties( THREE.TypedVector2.prototype, {
-	'x': {
-		get: function () { return this.array[ this.offset ]; },
-		set: function ( v ) { this.array[ this.offset ] = v; }
-	},
-	'y': {
-		get: function () { return this.array[ this.offset + 1 ]; },
-		set: function ( v ) { this.array[ this.offset + 1 ] = v; }
-	}
-} );
-
-THREE.TypedVector3 = function ( array, offset ) {
-	
-	this.array = array;
-	this.offset = offset;
-
-};
-
-THREE.TypedVector3.prototype = Object.create( THREE.Vector3.prototype );
-
-Object.defineProperties( THREE.TypedVector3.prototype, {
-	'x': {
-		get: function () { return this.array[ this.offset ]; },
-		set: function ( v ) { this.array[ this.offset ] = v; }
-	},
-	'y': {
-		get: function () { return this.array[ this.offset + 1 ]; },
-		set: function ( v ) { this.array[ this.offset + 1 ] = v; }
-	},
-	'z': {
-		get: function () { return this.array[ this.offset + 2 ]; },
-		set: function ( v ) { this.array[ this.offset + 2 ] = v; }
-	}
-} );

+ 5 - 4
examples/misc_geometry2_sandbox.html

@@ -18,8 +18,6 @@
 		<script src="../build/three.min.js"></script>
 
 		<script src="js/wip/PlaneGeometry.js"></script>
-		<script src="js/wip/PlaneGeometryB.js"></script>
-		<script src="js/wip/PlaneGeometryB2.js"></script>
 
 		<script src="js/wip/Geometry2.js"></script>
 		<script src="js/wip/BoxGeometry2.js"></script>
@@ -35,6 +33,9 @@
 		<script src="js/wip/IndexedGeometry5.js"></script>
 		<script src="js/wip/IndexedPlaneGeometry5.js"></script>
 
+		<script src="js/wip/PlaneBufferGeometry.js"></script>
+		<script src="js/wip/PlaneGeometry6.js"></script>
+
 		<script src="js/libs/stats.min.js"></script>
 
 		<script>
@@ -70,8 +71,8 @@
 				// addGeometries( 'PlaneGeometry2', 'BoxGeometry2', 0 );
 				// addGeometries( 'PlaneGeometry3', 'BoxGeometry2', 0 );
 				addGeometries( 'PlaneGeometry5', 'BoxGeometry2', 0 );
-				addGeometries( 'PlaneGeometryB', 'BoxGeometry2', 0 );
-				addGeometries( 'PlaneGeometryB2', 'BoxGeometry2', 0 );
+				addGeometries( 'PlaneBufferGeometry', 'BoxGeometry2', 0 );
+				addGeometries( 'PlaneGeometry6', 'BoxGeometry2', 0 );
 
 				//
 

+ 3 - 3
src/core/BufferGeometryManipulator.js

@@ -13,9 +13,9 @@ THREE.BufferGeometryManipulator = function ( bufferGeometry ) {
 
 	for ( var i = 0; i < length; i ++ ) {
 
-		this.vertices.push( new THREE.TypedVector3( attributes.position.array, i * 3 ) );
-		this.normals.push( new THREE.TypedVector3( attributes.normal.array, i * 3 ) );
-		this.uvs.push( new THREE.TypedVector2( attributes.uv.array, i * 2 ) );
+		this.vertices.push( new THREE.ProxyVector3( attributes.position.array, i * 3 ) );
+		this.normals.push( new THREE.ProxyVector3( attributes.normal.array, i * 3 ) );
+		this.uvs.push( new THREE.ProxyVector2( attributes.uv.array, i * 2 ) );
 
 	}
 

+ 3 - 3
src/math/TypedVector2.js → src/math/ProxyVector2.js

@@ -2,16 +2,16 @@
  * @author mrdoob / http://mrdoob.com/
  */
 
-THREE.TypedVector2 = function ( array, offset ) {
+THREE.ProxyVector2 = function ( array, offset ) {
 
 	this.array = array;
 	this.offset = offset;
 	
 };
 
-THREE.TypedVector2.prototype = Object.create( THREE.Vector2.prototype );
+THREE.ProxyVector2.prototype = Object.create( THREE.Vector2.prototype );
 
-Object.defineProperties( THREE.TypedVector2.prototype, {
+Object.defineProperties( THREE.ProxyVector2.prototype, {
 	'x': {
 		get: function () { return this.array[ this.offset ]; },
 		set: function ( v ) { this.array[ this.offset ] = v; }

+ 3 - 3
src/math/TypedVector3.js → src/math/ProxyVector3.js

@@ -2,16 +2,16 @@
  * @author mrdoob / http://mrdoob.com/
  */
 
-THREE.TypedVector3 = function ( array, offset ) {
+THREE.ProxyVector3 = function ( array, offset ) {
 	
 	this.array = array;
 	this.offset = offset;
 
 };
 
-THREE.TypedVector3.prototype = Object.create( THREE.Vector3.prototype );
+THREE.ProxyVector3.prototype = Object.create( THREE.Vector3.prototype );
 
-Object.defineProperties( THREE.TypedVector3.prototype, {
+Object.defineProperties( THREE.ProxyVector3.prototype, {
 	'x': {
 		get: function () { return this.array[ this.offset ]; },
 		set: function ( v ) { this.array[ this.offset ] = v; }

+ 2 - 2
utils/build/includes/common.json

@@ -5,8 +5,8 @@
 	"src/math/Vector2.js",
 	"src/math/Vector3.js",
 	"src/math/Vector4.js",
-	"src/math/TypedVector2.js",
-	"src/math/TypedVector3.js",
+	"src/math/ProxyVector2.js",
+	"src/math/ProxyVector3.js",
 	"src/math/Euler.js",
 	"src/math/Line3.js",
 	"src/math/Box2.js",