public class ScriptIntrinsicColorMatrix
extends ScriptIntrinsic
java.lang.Object | ||||
↳ | android.support.v8.renderscript.BaseObj | |||
↳ | android.support.v8.renderscript.Script | |||
↳ | android.support.v8.renderscript.ScriptIntrinsic | |||
↳ | android.support.v8.renderscript.ScriptIntrinsicColorMatrix |
将颜色矩阵应用于分配的固有内容。 这与加载每个元素并将其转换为F32_4(RenderScript)
的效果F32_4(RenderScript)
,将结果乘以由rsMatrixMultiply()执行的4x4颜色矩阵,并在转换回U8_4(RenderScript)
后将其写入输出。
Protected constructors |
|
---|---|
ScriptIntrinsicColorMatrix(long id, RenderScript rs) |
Public methods |
|
---|---|
static ScriptIntrinsicColorMatrix |
create(RenderScript rs, Element e) 创建用于将颜色矩阵应用于分配的内在因素。 |
void |
forEach(Allocation ain, Allocation aout, Script.LaunchOptions opt) 调用内核并将矩阵应用于输入 |
void |
forEach(Allocation ain, Allocation aout) 调用内核并将矩阵应用于ain的每个单元并复制到aout。 |
Script.KernelID |
getKernelID() 为此内核获取KernelID。 |
void |
setAdd(Float4 f) 设置应用颜色矩阵后要添加的值。 |
void |
setAdd(float r, float g, float b, float a) 设置应用颜色矩阵后要添加的值。 |
void |
setColorMatrix(Matrix3f m) 设置将应用于图像的每个单元格的颜色矩阵。 |
void |
setColorMatrix(Matrix4f m) 设置将应用于图像的每个单元格的颜色矩阵。 |
void |
setGreyscale() 设置一个颜色矩阵将RGB转换为亮度。 |
void |
setRGBtoYUV() 将矩阵设置为使用第四个通道的直接副本从RGB转换为YUV。 |
void |
setYUVtoRGB() 将矩阵设置为使用第四个通道的直接副本从YUV转换为RGB。 |
Inherited methods |
|
---|---|
From class android.support.v8.renderscript.Script
|
|
From class android.support.v8.renderscript.BaseObj
|
|
From class java.lang.Object
|
ScriptIntrinsicColorMatrix (long id, RenderScript rs)
Parameters | |
---|---|
id |
long
|
rs |
RenderScript
|
ScriptIntrinsicColorMatrix create (RenderScript rs, Element e)
创建用于将颜色矩阵应用于分配的内在因素。 支持的元素类型是U8_4(RenderScript)
Parameters | |
---|---|
rs |
RenderScript : The RenderScript context |
e |
Element : Element type for intputs and outputs |
Returns | |
---|---|
ScriptIntrinsicColorMatrix |
ScriptIntrinsicColorMatrix |
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 |
void forEach (Allocation ain, Allocation aout)
调用内核并将矩阵应用于ain的每个单元并复制到aout。
Parameters | |
---|---|
ain |
Allocation : Input allocation |
aout |
Allocation : Output allocation |
Script.KernelID getKernelID ()
为此内核获取KernelID。
Returns | |
---|---|
Script.KernelID |
Script.KernelID The KernelID object. |
void setAdd (Float4 f)
设置应用颜色矩阵后要添加的值。 默认值是{0,0,0,0}
Parameters | |
---|---|
f |
Float4 : The float4 value to be added. |
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. |
void setColorMatrix (Matrix3f m)
设置将应用于图像的每个单元格的颜色矩阵。 这将设置alpha通道为副本。
Parameters | |
---|---|
m |
Matrix3f : The 3x3 matrix to set. |
void setColorMatrix (Matrix4f m)
设置将应用于图像的每个单元格的颜色矩阵。
Parameters | |
---|---|
m |
Matrix4f : The 4x4 matrix to set. |
void setGreyscale ()
设置一个颜色矩阵将RGB转换为亮度。 Alpha通道将成为副本。
void setRGBtoYUV ()
将矩阵设置为使用第四个通道的直接副本从RGB转换为YUV。
void setYUVtoRGB ()
将矩阵设置为使用第四个通道的直接副本从YUV转换为RGB。