BufferGeometry
Object3D
Raycaster
Camera
CubeCamera
PerspectiveCamera
OrthographicCamera
StereoCamera
Clock
Curve
CurvePath
Path
Shape
ShapePath
ArrowHelper
AxesHelper
BoxHelper
Box3Helper
CameraHelper
DirectionalLightHelper
GridHelper
PolarGridHelper
HemisphereLightHelper
PlaneHelper
PointLightHelper
SkeletonHelper
SpotLightHelper
Light
PointLight
RectAreaLight
SpotLight
DirectionalLight
HemisphereLight
LightShadow
PointLightShadow
AnimationLoader
AudioLoader
BufferGeometryLoader
CompressedTextureLoader
CubeTextureLoader
DataTextureLoader
FileLoader
ImageBitmapLoader
ImageLoader
Loader
LoaderUtils
MaterialLoader
ObjectLoader
TextureLoader
LoadingManager
Material
Box2
Box3
Color
Cylindrical
Euler
Frustum
Interpolant
Line3
MathUtils
Matrix3
Matrix4
Plane
Quaternion
AnimationAction
AnimationClip
AnimationMixer
AnimationObjectGroup
AnimationUtils
keyframeTrack
PropertyBinding
PropertyMixer
BooleanKeyframeTrack
QuaternionKeyframeTrack
StringKeyframeTrack
Audio
AudioAnalyser
AudioContext
AudioListener
PositionalAudio

Object3D.clear()

Object3D.clear() 是 three.js 中 Object3D 的方法之一,用于清除当前 Object3D 对象的子元素。该函数会在子元素从父元素中移除后,立即删除子元素。

语法

object.clear()

参数

该函数没有参数。

返回值

该函数没有返回值。

示例

// 创建一个父元素和两个子元素
var parent = new THREE.Object3D();
var child1 = new THREE.Object3D();
var child2 = new THREE.Object3D();

// 将子元素添加到父元素中
parent.add(child1);
parent.add(child2);

// 在需要的时候清除父元素的子元素
parent.clear();

在该示例中,我们创建了一个 parent 元素和两个子元素 child1child2。然后我们将这两个子元素添加到父元素中。最后,我们使用 clear() 函数清除父元素中的所有子元素。

注意点

  • 如果需要清除一个已经添加到场景中的元素,请使用 scene.remove( object ) 函数。clear() 函数只用于清除 Object3D 对象的子元素。

  • 如果需要仅从一个对象中移除子元素,而不是立即清除它们,请使用 obj.children = [];

  • clear() 函数中清除的子元素将被立即删除,并且无法再次添加到父元素中。如果需要在稍后的时间再次使用这些子元素,请考虑使用它们的副本。

参考资料