Most visited

Recently visited

Added in API level 17

ScriptIntrinsicColorMatrix

public final class ScriptIntrinsicColorMatrix
extends ScriptIntrinsic

java.lang.Object
   ↳ android.renderscript.BaseObj
     ↳ android.renderscript.Script
       ↳ android.renderscript.ScriptIntrinsic
         ↳ android.renderscript.ScriptIntrinsicColorMatrix


将颜色矩阵应用于分配的固有内容。 如果元素类型为UNSIGNED_8 ,则将其转换为FLOAT_32并从(0-255)到(0-1)进行归一化。 如果传入矢量大小小于4,则通过用零填充缺失的矢量通道来创建F32_4(RenderScript) 然后将该值乘以rsMatrixMultiply()所执行的4x4颜色矩阵,并添加F32_4(RenderScript) ,然后将其写入输出Allocation 如果ouptut类型是无符号的,则从(0-1)到(0-255)进行归一化并转换。 如果输出矢量大小小于4,则丢弃未使用的通道。 支持的元素类型是U8(RenderScript)U8_2(RenderScript)U8_3(RenderScript)U8_4(RenderScript)F32(RenderScript)F32_2(RenderScript)F32_3(RenderScript) ,和F32_4(RenderScript)

Summary

Public methods

static ScriptIntrinsicColorMatrix create(RenderScript rs, Element e)

此方法在API级别19中已弃用。使用单参数版本,因为元素现在被忽略。

static ScriptIntrinsicColorMatrix create(RenderScript rs)

创建用于将颜色矩阵应用于分配的内在因素。

void forEach(Allocation ain, Allocation aout)

调用内核并将矩阵应用于输入 Allocation每个单元并复制到输出 Allocation

void forEach(Allocation ain, Allocation aout, Script.LaunchOptions opt)

调用内核并将矩阵应用于输入 Allocation每个单元并复制到输出 Allocation

Script.KernelID getKernelID()

为此内核获取KernelID。

void setAdd(float r, float g, float b, float a)

设置应用颜色矩阵后要添加的值。

void setAdd(Float4 f)

设置应用颜色矩阵后要添加的值。

void setColorMatrix(Matrix3f m)

设置将应用于图像的每个单元格的颜色矩阵。

void setColorMatrix(Matrix4f m)

设置将应用于图像的每个单元格的颜色矩阵。

void setGreyscale()

设置一个颜色矩阵将RGB转换为亮度。

void setRGBtoYUV()

将矩阵设置为使用第四个通道的直接副本从RGB转换为YUV。

void setYUVtoRGB()

将矩阵设置为使用第四个通道的直接副本从YUV转换为RGB。

Inherited methods

From class android.renderscript.Script
From class android.renderscript.BaseObj
From class java.lang.Object

Public methods

create

Added in API level 17
ScriptIntrinsicColorMatrix create (RenderScript rs, 
                Element e)

此方法在API级别19中已被弃用。
使用单参数版本,因为元素现在被忽略。

创建用于将颜色矩阵应用于分配的内在因素。

Parameters
rs RenderScript: The RenderScript context
e Element: Element type for inputs and outputs, As of API 19, this parameter is ignored. The Element type check is performed in the kernel launch.
Returns
ScriptIntrinsicColorMatrix ScriptIntrinsicColorMatrix

create

Added in API level 19
ScriptIntrinsicColorMatrix create (RenderScript rs)

创建用于将颜色矩阵应用于分配的内在因素。

Parameters
rs RenderScript: The RenderScript context
Returns
ScriptIntrinsicColorMatrix ScriptIntrinsicColorMatrix

forEach

Added in API level 17
void forEach (Allocation ain, 
                Allocation aout)

调用内核并将矩阵应用于输入Allocation每个单元并复制到输出Allocation 如果输入的向量大小小于4,则其余分量被视为矩阵乘的零。 如果输出矢量大小小于4,则丢弃未使用的矢量分量。

Parameters
ain Allocation: Input allocation
aout Allocation: Output allocation

forEach

Added in API level 21
void forEach (Allocation ain, 
                Allocation aout, 
                Script.LaunchOptions opt)

调用内核并将矩阵应用于输入Allocation每个单元并复制到输出Allocation 如果输入的向量大小小于4,则其余分量被视为矩阵乘的零。 如果输出矢量大小小于4,则丢弃未使用的矢量分量。

Parameters
ain Allocation: Input allocation
aout Allocation: Output allocation
opt Script.LaunchOptions: LaunchOptions for clipping

getKernelID

Added in API level 17
Script.KernelID getKernelID ()

为此内核获取KernelID。

Returns
Script.KernelID Script.KernelID The KernelID object.

setAdd

Added in API level 19
void setAdd (float r, 
                float g, 
                float b, 
                float a)

设置应用颜色矩阵后要添加的值。 默认值是{0,0,0,0}

Parameters
r float: The red add value.
g float: The green add value.
b float: The blue add value.
a float: The alpha add value.

setAdd

Added in API level 19
void setAdd (Float4 f)

设置应用颜色矩阵后要添加的值。 默认值是{0,0,0,0}

Parameters
f Float4: The float4 value to be added.

setColorMatrix

Added in API level 17
void setColorMatrix (Matrix3f m)

设置将应用于图像的每个单元格的颜色矩阵。 这将设置alpha通道为副本。

Parameters
m Matrix3f: The 3x3 matrix to set.

setColorMatrix

Added in API level 17
void setColorMatrix (Matrix4f m)

设置将应用于图像的每个单元格的颜色矩阵。

Parameters
m Matrix4f: The 4x4 matrix to set.

setGreyscale

Added in API level 17
void setGreyscale ()

设置一个颜色矩阵将RGB转换为亮度。 Alpha通道将成为副本。

setRGBtoYUV

Added in API level 17
void setRGBtoYUV ()

将矩阵设置为使用第四个通道的直接副本从RGB转换为YUV。

setYUVtoRGB

Added in API level 17
void setYUVtoRGB ()

将矩阵设置为使用第四个通道的直接副本从YUV转换为RGB。

Hooray!