---
title: "TileMode"
description: "Defines what happens at the edge of the gradient. A gradient is defined along a finite inner
area. In the case of a linear gradient, it's between the parallel lines that are orthogonal to
the line drawn between two points. In the case of radial gradients, it's the disc that covers the
circle centered on a particular point up to a given radius.

This enum is used to define how the gradient should paint the regions outside that defined inner
area.

See also: [LinearGradientShader], [RadialGradientShader] which works in relative coordinates and
can create a [Shader] representing the gradient for a particular
[androidx.compose.ui.geometry.Rect] on demand."
type: "class"
---

<div class='type'>Class</div>


<a id='references'></a>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
value class TileMode internal constructor(@Suppress("unused") private val value: Int)
```


Defines what happens at the edge of the gradient. A gradient is defined along a finite inner
area. In the case of a linear gradient, it's between the parallel lines that are orthogonal to
the line drawn between two points. In the case of radial gradients, it's the disc that covers the
circle centered on a particular point up to a given radius.

This enum is used to define how the gradient should paint the regions outside that defined inner
area.

See also: `LinearGradientShader`, `RadialGradientShader` which works in relative coordinates and
can create a `Shader` representing the gradient for a particular
`androidx.compose.ui.geometry.Rect` on demand.


## Companion Object

#### Properties

<div class='sourceset sourceset-common'>Common</div>


```kotlin
val Clamp = TileMode(0)
```


Edge is clamped to the final color.

The gradient will paint the all the regions outside the inner area with the color of the
point closest to that region.
!`TileMode.Clamp`(https://developer.android.com/static/images/jetpack/compose/graphics/brush/tile_mode_clamp.png)



<div class='sourceset sourceset-common'>Common</div>


```kotlin
val Repeated = TileMode(1)
```


Edge is repeated from first color to last.

This is as if the stop points from 0.0 to 1.0 were then repeated from 1.0 to 2.0, 2.0 to
3.0, and so forth (and for linear gradients, similarly from -1.0 to 0.0, -2.0 to -1.0,
etc).
!`TileMode.Repeated`(https://developer.android.com/static/images/jetpack/compose/graphics/brush/tile_mode_repeated.png)



<div class='sourceset sourceset-common'>Common</div>


```kotlin
val Mirror = TileMode(2)
```


Edge is mirrored from last color to first. This is as if the stop points from 0.0 to 1.0
were then repeated backwards from 2.0 to 1.0, then forwards from 2.0 to 3.0, then
backwards again from 4.0 to 3.0, and so forth (and for linear gradients, similarly from
in the negative direction).
!`TileMode.Mirror`(https://developer.android.com/static/images/jetpack/compose/graphics/brush/tile_mode_mirror.png)



<div class='sourceset sourceset-common'>Common</div>


```kotlin
val Decal = TileMode(3)
```


Render the shader's image pixels only within its original bounds. If the shader draws
outside of its original bounds, transparent black is drawn instead.
!`TileMode.Decal`(https://developer.android.com/static/images/jetpack/compose/graphics/brush/tile_mode_decal.png)





