import { Matrix4 } from '../math/Matrix4'; import { Mesh } from '../objects/Mesh'; import { Group } from '../objects/Group'; var SceneUtils; /** * @author alteredq / http://alteredqualia.com/ */ SceneUtils = { createMultiMaterialObject: function ( geometry, materials ) { var group = new Group(); for ( var i = 0, l = materials.length; i < l; i ++ ) { group.add( new Mesh( geometry, materials[ i ] ) ); } return group; }, detach: function ( child, parent, scene ) { child.applyMatrix( parent.matrixWorld ); parent.remove( child ); scene.add( child ); }, attach: function ( child, scene, parent ) { var matrixWorldInverse = new Matrix4(); matrixWorldInverse.getInverse( parent.matrixWorld ); child.applyMatrix( matrixWorldInverse ); scene.remove( child ); parent.add( child ); } }; export { SceneUtils };