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

Color.convertLinearToSRGB()

Color.convertLinearToSRGB() 是 Three.js 库中的一个函数,用于将线性 RGB 颜色值转换为标准的 sRGB 颜色值。

语法

Color.convertLinearToSRGB( linearColor : Color ) : Color

参数

  • linearColor:类型为 Color 的对象,代表需要进行转换的线性 RGB 颜色值。

返回值

返回一个 Color 对象,代表转换后的标准 sRGB 颜色值。

描述

在计算机图像学中,颜色值通常使用 RGB 颜色空间来表示。而 sRGB 是一种标准化的 RGB 颜色空间,被广泛应用于互联网和数码设备领域。当涉及到颜色值的输入、输出和显示时,sRGB 是一种普遍的标准。

然而,计算机处理颜色时,通常采用的是线性的颜色空间。通常将 RGB 颜色值转换到线性颜色空间内进行处理,然后再将其转换回 sRGB 颜色空间以供显示。

Color.convertLinearToSRGB() 函数将线性 RGB 颜色值转换为标准 sRGB 颜色值。该函数使用的是线性到非线性的 sRGB 转换公式,以确保转换结果的准确性。转换后的颜色值可以直接用于显示或输出等操作。

示例

var linearColor = new THREE.Color( 1, 1, 1 ).toArray(); // 线性 RGB 颜色值
var sRGBColor = Color.convertLinearToSRGB( new THREE.Color().fromArray( linearColor ) ); // 转换为 sRGB 颜色值
console.log( sRGBColor ); // 输出标准的 sRGB 颜色值

参考文献