ScriptIntrinsicColorMatrix
  public
  
  final
  
  class
  ScriptIntrinsicColorMatrix
  
  
  
  
  
  
  
  
  
  
    extends ScriptIntrinsic
  
  
  
  
  
  
| java.lang.Object | ||||
| ↳ | android.renderscript.BaseObj | |||
| ↳ | android.renderscript.Script | |||
| ↳ | android.renderscript.ScriptIntrinsic | |||
| ↳ | android.renderscript.ScriptIntrinsicColorMatrix | |||
      This class was deprecated
      in API level 31.
    Renderscript has been deprecated in API level 31. Please refer to the migration
 guide for the proposed alternatives.
  
Intrinsic for applying a color matrix to allocations.
 If the element type is Element.DataType.UNSIGNED_8,
 it is converted to Element.DataType.FLOAT_32 and
 normalized from (0-255) to (0-1). If the incoming vector size
 is less than four, a Element.F32_4 is created by
 filling the missing vector channels with zero. This value is
 then multiplied by the 4x4 color matrix as performed by
 rsMatrixMultiply(), adding a Element.F32_4, and then
 writing it to the output Allocation.
 If the ouptut type is unsigned, the value is normalized from
 (0-1) to (0-255) and converted. If the output vector size is
 less than four, the unused channels are discarded.
 Supported elements types are Element.U8, Element.U8_2(RenderScript), Element.U8_3, Element.U8_4,
 Element.F32, Element.F32_2, Element.F32_3(RenderScript), and Element.F32_4.
Summary
| Public methods | |
|---|---|
| 
        
        
        static
        
        
        ScriptIntrinsicColorMatrix | 
      create(RenderScript rs, Element e)
      This method was deprecated in API level 19. Use the single argument version as Element is now ignored. | 
| 
        
        
        static
        
        
        ScriptIntrinsicColorMatrix | 
      create(RenderScript rs)
      Create an intrinsic for applying a color matrix to an allocation. | 
| 
        
        
        
        
        
        void | 
      forEach(Allocation ain, Allocation aout)
      Invoke the kernel and apply the matrix to each cell of input
  | 
| 
        
        
        
        
        
        void | 
      forEach(Allocation ain, Allocation aout, Script.LaunchOptions opt)
      Invoke the kernel and apply the matrix to each cell of input
  | 
| 
        
        
        
        
        
        Script.KernelID | 
      getKernelID()
      Get a KernelID for this intrinsic kernel. | 
| 
        
        
        
        
        
        void | 
      setAdd(float r, float g, float b, float a)
      Set the value to be added after the color matrix has been applied. | 
| 
        
        
        
        
        
        void | 
      setAdd(Float4 f)
      Set the value to be added after the color matrix has been applied. | 
| 
        
        
        
        
        
        void | 
      setColorMatrix(Matrix3f m)
      Set the color matrix which will be applied to each cell of the image. | 
| 
        
        
        
        
        
        void | 
      setColorMatrix(Matrix4f m)
      Set the color matrix which will be applied to each cell of the image. | 
| 
        
        
        
        
        
        void | 
      setGreyscale()
      Set a color matrix to convert from RGB to luminance. | 
| 
        
        
        
        
        
        void | 
      setRGBtoYUV()
      Set the matrix to convert from RGB to YUV with a direct copy of the 4th channel. | 
| 
        
        
        
        
        
        void | 
      setYUVtoRGB()
      Set the matrix to convert from YUV to RGB with a direct copy of the 4th channel. | 
| Inherited methods | |
|---|---|
Public methods
create
public static ScriptIntrinsicColorMatrix create (RenderScript rs, Element e)
      This method was deprecated
      in API level 19.
    Use the single argument version as Element is now
             ignored.
  
Create an intrinsic for applying a color matrix to an allocation.
| 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
public static ScriptIntrinsicColorMatrix create (RenderScript rs)
Create an intrinsic for applying a color matrix to an allocation.
| Parameters | |
|---|---|
| rs | RenderScript: The RenderScript context | 
| Returns | |
|---|---|
| ScriptIntrinsicColorMatrix | ScriptIntrinsicColorMatrix | 
forEach
public void forEach (Allocation ain, Allocation aout)
Invoke the kernel and apply the matrix to each cell of input
 Allocation and copy to the output Allocation.
 If the vector size of the input is less than four, the
 remaining components are treated as zero for the matrix
 multiply.
 If the output vector size is less than four, the unused
 vector components are discarded.
| Parameters | |
|---|---|
| ain | Allocation: Input allocation | 
| aout | Allocation: Output allocation | 
forEach
public void forEach (Allocation ain, Allocation aout, Script.LaunchOptions opt)
Invoke the kernel and apply the matrix to each cell of input
 Allocation and copy to the output Allocation.
 If the vector size of the input is less than four, the
 remaining components are treated as zero for the matrix
 multiply.
 If the output vector size is less than four, the unused
 vector components are discarded.
| Parameters | |
|---|---|
| ain | Allocation: Input allocation | 
| aout | Allocation: Output allocation | 
| opt | Script.LaunchOptions: LaunchOptions for clipping | 
getKernelID
public Script.KernelID getKernelID ()
Get a KernelID for this intrinsic kernel.
| Returns | |
|---|---|
| Script.KernelID | Script.KernelID The KernelID object. | 
setAdd
public void setAdd (float r, 
                float g, 
                float b, 
                float a)Set the value to be added after the color matrix has been applied. The default value is {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
public void setAdd (Float4 f)
Set the value to be added after the color matrix has been applied. The default value is {0, 0, 0, 0}
| Parameters | |
|---|---|
| f | Float4: The float4 value to be added. | 
setColorMatrix
public void setColorMatrix (Matrix3f m)
Set the color matrix which will be applied to each cell of the image. This will set the alpha channel to be a copy.
| Parameters | |
|---|---|
| m | Matrix3f: The 3x3 matrix to set. | 
setColorMatrix
public void setColorMatrix (Matrix4f m)
Set the color matrix which will be applied to each cell of the image.
| Parameters | |
|---|---|
| m | Matrix4f: The 4x4 matrix to set. | 
setGreyscale
public void setGreyscale ()
Set a color matrix to convert from RGB to luminance. The alpha channel will be a copy.
setRGBtoYUV
public void setRGBtoYUV ()
Set the matrix to convert from RGB to YUV with a direct copy of the 4th channel.
setYUVtoRGB
public void setYUVtoRGB ()
Set the matrix to convert from YUV to RGB with a direct copy of the 4th channel.
