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

Box2.copy()

Box2.copy() 方法是 three.js 中 Box2 类的一个方法。它用于将一个矩形框的所有属性设置为另一个矩形框的属性值。

语法

copy(box: Box2): Box2

参数

  • box:要复制属性值的源 Box2 对象。

返回值

返回值为目标 Box2 对象,即方法的调用者。

示例

let box1 = new THREE.Box2(new THREE.Vector2(0, 0), new THREE.Vector2(2, 2));
let box2 = new THREE.Box2(new THREE.Vector2(1, 1), new THREE.Vector2(3, 3));

box1.copy(box2);

console.log(box1.min); // Vector2 {x: 1, y: 1}
console.log(box1.max); // Vector2 {x: 3, y: 3}

使用说明

Box2.copy() 方法用于将一个矩形框的所有属性设置为另一个矩形框的属性值。所以,使用该方法时需要先创建两个矩形框实例,一个作为目标对象(调用该方法的对象),另一个作为源对象(作为参数传入该方法)。然后调用 copy() 方法,就可以将源矩形框的属性值传递给目标矩形框了。

在示例中,定义了两个 Box2 实例 box1box2。然后,使用 copy() 方法将 box2 的属性值复制到了 box1 中。最后,输出了 box1 的最小值和最大值属性值,可以看到已经成功将 box2 的属性值传递给了 box1

需要注意的是,Box2.copy() 方法是将源对象的属性值直接赋值给目标对象,所以源对象和目标对象之间的关系是浅克隆关系,即它们指向的内存地址是一致的。如果需要对目标对象进行深克隆,需要使用其他方式进行处理。