# [name]

A class containing useful utility functions for scene manipulation.

## Methods

### [method:Object3D createMultiMaterialObject]([page:Geometry geometry], [page:Array materials])

geometry -- The geometry for the Object.
materials -- The materials for the object.
Creates an new Object3D an new mesh for each material defined in materials. Beware that this is not the same as Meshfacematerial which defines multiple material for 1 mesh.
This is mostly useful for object that need a material and a wireframe implementation.

### [method:null attach]([page:Object3D child], [page:Object3D scene], [page:Object3D parent])

child -- The object to add to the parent
scene -- The scene to detach the object on.
parent -- The parent to attach the object from.
Attaches the object to the parent without the moving the object in the worldspace. Beware that to do this the matrixWorld needs to be updated, this can be done by calling the updateMatrixWorld method on the parent object.

### [method:null detach]([page:Object3D child], [page:Object3D parent], [page:Object3D scene])

child -- The object to remove from the parent
scene -- The scene to attach the object on.
parent -- The parent to detach the object from.
Detaches the object from the parent and adds it back to the scene without moving in worldspace. Beware that to do this the matrixWorld needs to be updated, this can be done by calling the updateMatrixWorld method on the parent object.

## Source

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]