SceneUtils.js 719 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /**
  2. * @author alteredq / http://alteredqualia.com/
  3. */
  4. THREE.SceneUtils = {
  5. createMultiMaterialObject: function ( geometry, materials ) {
  6. var group = new THREE.Object3D();
  7. for ( var i = 0, l = materials.length; i < l; i ++ ) {
  8. group.add( new THREE.Mesh( geometry, materials[ i ] ) );
  9. }
  10. return group;
  11. },
  12. detach : function ( child, parent, scene ) {
  13. child.applyMatrix( parent.matrixWorld );
  14. parent.remove( child );
  15. scene.add( child );
  16. },
  17. attach: function ( child, scene, parent ) {
  18. var matrixWorldInverse = new THREE.Matrix4();
  19. matrixWorldInverse.getInverse( parent.matrixWorld );
  20. child.applyMatrix( matrixWorldInverse );
  21. scene.remove( child );
  22. parent.add( child );
  23. }
  24. };
粤ICP备19079148号