1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- /**
- * @author mr.doob / http://mrdoob.com/
- * @author alteredq / http://alteredqualia.com/
- * @author mikael emtinger / http://gomo.se/
- */
- THREE.Mesh = function ( geometry, materials ) {
- THREE.Object3D.call( this );
- this.geometry = geometry;
- this.materials = materials && materials.length ? materials : [ materials ];
- this.overdraw = false; // TODO: Move to material?
- if ( this.geometry ) {
- // calc bound radius
- if( !this.geometry.boundingSphere ) {
- this.geometry.computeBoundingSphere();
- }
- this.boundRadius = geometry.boundingSphere.radius;
- // setup morph targets
- if( this.geometry.morphTargets.length ) {
- this.morphTargetBase = -1;
- this.morphTargetForcedOrder = [];
- this.morphTargetInfluences = [];
- this.morphTargetDictionary = {};
- for( var m = 0; m < this.geometry.morphTargets.length; m ++ ) {
- this.morphTargetInfluences.push( 0 );
- this.morphTargetDictionary[ this.geometry.morphTargets[ m ].name ] = m;
- }
- }
- }
- }
- THREE.Mesh.prototype = new THREE.Object3D();
- THREE.Mesh.prototype.constructor = THREE.Mesh;
- THREE.Mesh.prototype.supr = THREE.Object3D.prototype;
- /*
- * Get Morph Target Index by Name
- */
- THREE.Mesh.prototype.getMorphTargetIndexByName = function( name ) {
- if ( this.morphTargetDictionary[ name ] !== undefined ) {
- return this.morphTargetDictionary[ name ];
- }
- console.log( "THREE.Mesh.getMorphTargetIndexByName: morph target " + name + " does not exist. Returning 0." );
- return 0;
- }
|