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

Quaternion.conjugate()

该方法用于计算四元数的共轭。

语法

quaternion.conjugate()
  • quaternion:存储四元数的变量。

返回值

返回一个新的四元数,该四元数是原始四元数共轭的结果。

描述

四元数是由实部和虚部组成的复数。在three.js中,我们使用基于向量的四元数表示法。四元数的共轭表示复共轭,即实部不变,虚部取负。具体来说,对于四元数 q = w + xi + yj + zk,其共轭为 q* = w - xi - yj - zk。

在three.js中,我们使用的是右手坐标系。如果将一个四元数作用于向量,它会将该向量绕任意轴旋转。而它的共轭表示的旋转方向是相反的。

示例

const q = new THREE.Quaternion(1, 2, 3, 4);
const qConjugate = q.conjugate();

console.log(q); // Quaternion {w: 1, x: 2, y: 3, z: 4}
console.log(qConjugate); // Quaternion {w: 1, x: -2, y: -3, z: -4}

在这个例子中,我们创建了一个四元数 q,它的实部为1,虚部为2、3和4。然后,我们对其进行共轭计算,得到了一个新的四元数 qConjugate,它的实部与 q 相同,但是虚部取了负值。