RenderEffect
  public
  
  final
  
  class
  RenderEffect
  
    extends Object
  
  
  
  
  
  
  
    
  Intermediate rendering step used to render drawing commands with a corresponding
 visual effect. A RenderEffect can be configured on a RenderNode through
 RenderNode.setRenderEffect(RenderEffect) and will be applied when drawn through
 Canvas.drawRenderNode(RenderNode).
 Additionally a RenderEffect can be applied to a View's backing RenderNode through
 View.setRenderEffect(RenderEffect)
Summary
Public methods | 
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createBitmapEffect(Bitmap bitmap)
      
      
        Create a RenderEffect that renders the contents of the input Bitmap.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createBitmapEffect(Bitmap bitmap, Rect src, Rect dst)
      
      
        Create a RenderEffect that renders the contents of the input Bitmap.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createBlendModeEffect(RenderEffect dst, RenderEffect src, BlendMode blendMode)
      
      
        Create a RenderEffect that is a composition of 2 other RenderEffect instances
 combined by the specified BlendMode
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createBlurEffect(float radiusX, float radiusY, Shader.TileMode edgeTreatment)
      
      
        Create a RenderEffect that blurs the contents of the
 RenderNode that this RenderEffect is installed on with the
 specified radius along the x and y axis.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createBlurEffect(float radiusX, float radiusY, RenderEffect inputEffect, Shader.TileMode edgeTreatment)
      
      
        Create a RenderEffect that blurs the contents of the optional input RenderEffect
 with the specified radius along the x and y axis.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createChainEffect(RenderEffect outer, RenderEffect inner)
      
      
        Create a RenderEffect that composes 'inner' with 'outer', such that the results of
 'inner' are treated as the source bitmap passed to 'outer', i.e.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createColorFilterEffect(ColorFilter colorFilter, RenderEffect renderEffect)
      
      
        Create a RenderEffect that applies the color filter to the provided RenderEffect
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createColorFilterEffect(ColorFilter colorFilter)
      
      
        Create a RenderEffect that applies the color filter to the contents of the
 RenderNode that this RenderEffect is installed on
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createOffsetEffect(float offsetX, float offsetY, RenderEffect input)
      
      
        Create a RenderEffect instance with the provided x and y offset
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createOffsetEffect(float offsetX, float offsetY)
      
      
        Create a RenderEffect instance that will offset the drawing content
 by the provided x and y offset.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createRuntimeShaderEffect(RuntimeShader shader, String uniformShaderName)
      
      
        Create a RenderEffect that executes the provided RuntimeShader and passes
 the contents of the RenderNode that this RenderEffect is installed
 on as an input to the shader.
        
    
 
      
     | 
  
  
  
  
  
    
        
        
        static
        
        
        RenderEffect
     | 
  
    
      
      createShaderEffect(Shader shader)
      
      
        Create a RenderEffect that renders the contents of the input Shader.
        
    
 
      
     | 
  
  
Inherited methods | 
  
    From class
      
        
          java.lang.Object
        
      
    
    
      
  
  
  
    
        
        
        
        
        
        Object
     | 
  
    
      
      clone()
      
      
        Creates and returns a copy of this object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        boolean
     | 
  
    
      
      equals(Object obj)
      
      
        Indicates whether some other object is "equal to" this one.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        void
     | 
  
    
      
      finalize()
      
      
        Called by the garbage collector on an object when garbage collection
 determines that there are no more references to the object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        Class<?>
     | 
  
    
      
      getClass()
      
      
        Returns the runtime class of this Object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        int
     | 
  
    
      
      hashCode()
      
      
        Returns a hash code value for the object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      notify()
      
      
        Wakes up a single thread that is waiting on this object's
 monitor.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      notifyAll()
      
      
        Wakes up all threads that are waiting on this object's monitor.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        
        
        String
     | 
  
    
      
      toString()
      
      
        Returns a string representation of the object.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      wait(long timeoutMillis, int nanos)
      
      
        Causes the current thread to wait until it is awakened, typically
 by being notified or interrupted, or until a
 certain amount of real time has elapsed.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      wait(long timeoutMillis)
      
      
        Causes the current thread to wait until it is awakened, typically
 by being notified or interrupted, or until a
 certain amount of real time has elapsed.
        
    
 
      
     | 
   
  
  
  
  
    
        
        
        
        final
        
        void
     | 
  
    
      
      wait()
      
      
        Causes the current thread to wait until it is awakened, typically
 by being notified or interrupted.
        
    
 
      
     | 
   
  
     
   
 | 
Public methods
    createBlendModeEffect
    
public static RenderEffect createBlendModeEffect (RenderEffect dst, 
                RenderEffect src, 
                BlendMode blendMode)
    
    
    
  Create a RenderEffect that is a composition of 2 other RenderEffect instances
 combined by the specified BlendMode
    
    | Parameters | 
      
        dst | 
        
          RenderEffect: The Dst pixels used in blending
 This value cannot be null. | 
      
      
        src | 
        
          RenderEffect: The Src pixels used in blending
 This value cannot be null. | 
      
      
        blendMode | 
        
          BlendMode: The BlendMode to be used to combine colors from the two
                  RenderEffects
 This value cannot be null. | 
      
    
    
 
    createBlurEffect
    
public static RenderEffect createBlurEffect (float radiusX, 
                float radiusY, 
                Shader.TileMode edgeTreatment)
    
    
    
  Create a RenderEffect that blurs the contents of the
 RenderNode that this RenderEffect is installed on with the
 specified radius along the x and y axis.
    
    | Parameters | 
      
        radiusX | 
        
          float: Radius of blur along the X axis | 
      
      
        radiusY | 
        
          float: Radius of blur along the Y axis | 
      
      
        edgeTreatment | 
        
          Shader.TileMode: Policy for how to blur content near edges of the blur kernel
 This value cannot be null. | 
      
    
    
 
    createBlurEffect
    
public static RenderEffect createBlurEffect (float radiusX, 
                float radiusY, 
                RenderEffect inputEffect, 
                Shader.TileMode edgeTreatment)
    
    
    
  Create a RenderEffect that blurs the contents of the optional input RenderEffect
 with the specified radius along the x and y axis. If no input RenderEffect is provided
 then all drawing commands issued with a RenderNode that this
 RenderEffect is installed in will be blurred
    
    | Parameters | 
      
        radiusX | 
        
          float: Radius of blur along the X axis | 
      
      
        radiusY | 
        
          float: Radius of blur along the Y axis | 
      
      
        inputEffect | 
        
          RenderEffect: Input RenderEffect that provides the content to be blurred, can be null
                    to indicate that the drawing commands on the RenderNode are to be
                    blurred instead of the input RenderEffect | 
      
      
        edgeTreatment | 
        
          Shader.TileMode: Policy for how to blur content near edges of the blur kernel
 This value cannot be null. | 
      
    
    
 
    createChainEffect
    
public static RenderEffect createChainEffect (RenderEffect outer, 
                RenderEffect inner)
    
    
    
  Create a RenderEffect that composes 'inner' with 'outer', such that the results of
 'inner' are treated as the source bitmap passed to 'outer', i.e.
 
 result = outer(inner(source))
 
 
 Consumers should favor explicit chaining of 
RenderEffect instances at creation time
 rather than using chain effect. Chain effects are useful for situations where the input or
 output are provided from elsewhere and the input or output 
RenderEffect need to be
 changed.
    
    | Parameters | 
      
        outer | 
        
          RenderEffect: RenderEffect that consumes the output of  as its input
 This value cannot be null. | 
      
      
        inner | 
        
          RenderEffect: RenderEffect that is consumed as input by 
 This value cannot be null. | 
      
    
    
 
    createColorFilterEffect
    
public static RenderEffect createColorFilterEffect (ColorFilter colorFilter, 
                RenderEffect renderEffect)
    
    
    
  Create a RenderEffect that applies the color filter to the provided RenderEffect
    
    | Parameters | 
      
        colorFilter | 
        
          ColorFilter: ColorFilter applied to the content in the input RenderEffect
 This value cannot be null. | 
      
      
        renderEffect | 
        
          RenderEffect: Source to be transformed by the specified ColorFilter
 This value cannot be null. | 
      
    
    
 
    createColorFilterEffect
    
public static RenderEffect createColorFilterEffect (ColorFilter colorFilter)
    
    
    
  Create a RenderEffect that applies the color filter to the contents of the
 RenderNode that this RenderEffect is installed on
    
    | Parameters | 
      
        colorFilter | 
        
          ColorFilter: ColorFilter applied to the content in the input RenderEffect
 This value cannot be null. | 
      
    
    
 
    createOffsetEffect
    
public static RenderEffect createOffsetEffect (float offsetX, 
                float offsetY, 
                RenderEffect input)
    
    
    
  Create a RenderEffect instance with the provided x and y offset
    
    | Parameters | 
      
        offsetX | 
        
          float: offset along the x axis in pixels | 
      
      
        offsetY | 
        
          float: offset along the y axis in pixels | 
      
      
        input | 
        
          RenderEffect: target RenderEffect used to render in the offset coordinates.
 This value cannot be null. | 
      
    
    
 
    createOffsetEffect
    
public static RenderEffect createOffsetEffect (float offsetX, 
                float offsetY)
    
    
    
  Create a RenderEffect instance that will offset the drawing content
 by the provided x and y offset.
    
    | Parameters | 
      
        offsetX | 
        
          float: offset along the x axis in pixels | 
      
      
        offsetY | 
        
          float: offset along the y axis in pixels | 
      
    
    
 
    createRuntimeShaderEffect
    
public static RenderEffect createRuntimeShaderEffect (RuntimeShader shader, 
                String uniformShaderName)
    
    
    
  Create a RenderEffect that executes the provided RuntimeShader and passes
 the contents of the RenderNode that this RenderEffect is installed
 on as an input to the shader.
    
    | Parameters | 
      
        shader | 
        
          RuntimeShader: the runtime shader that will bind the inputShaderName to the RenderEffect input
 This value cannot be null. | 
      
      
        uniformShaderName | 
        
          String: the uniform name defined in the RuntimeShader's program to which
                         the contents of the RenderNode will be bound
 This value cannot be null. |